Kennt sich jemand mit MCB's bzw. Speicherverwaltung aus?
Verfasst: So 12. Sep 2021, 15:12
Hallo,
ich beschäftige mich gerade aus gegebenem Anlass mit der DOS-Speicherverwaltung.
Da gibt's ja diese Memory Control Blocks welche DOS jedem Speicherbereich voranstellt.
Frage 1:
Haben auch freie Speicherblöcke einen MCB vorne dran?
Frage 2:
Im Buch PC intern von Michael Tischer ist beschrieben wie man die Kette der MCBs durchlaufen bzw. anhand gewisser Merkmale erkennen kann um welche Art von Speicherbereich es sich handelt den der MCB beschreibt.
Ob der Speicherbereich ein PSP ist kann beispielsweise anhand der ersten beiden Bytes erkannt werden ($cd, $20)
Falls der Speicherbereich mit COMSPEC=<Pfad zum Kommandoprozessor> beginnt ist es ein Block mit Environment-Variablen handeln.
Könnt ihr das bestätigen? Ich hab da nämlich in der Kette einen Speicherblock welcher die Environment-Variablen enthält, da steht am Anfang jedoch PATH=<Pfad> und erst dannach kommt COMSPEC=....
Jetzt bin ich etwas verunsichert was das betrifft.....
lg, Markus
ich beschäftige mich gerade aus gegebenem Anlass mit der DOS-Speicherverwaltung.
Da gibt's ja diese Memory Control Blocks welche DOS jedem Speicherbereich voranstellt.
Frage 1:
Haben auch freie Speicherblöcke einen MCB vorne dran?
Frage 2:
Im Buch PC intern von Michael Tischer ist beschrieben wie man die Kette der MCBs durchlaufen bzw. anhand gewisser Merkmale erkennen kann um welche Art von Speicherbereich es sich handelt den der MCB beschreibt.
Ob der Speicherbereich ein PSP ist kann beispielsweise anhand der ersten beiden Bytes erkannt werden ($cd, $20)
Falls der Speicherbereich mit COMSPEC=<Pfad zum Kommandoprozessor> beginnt ist es ein Block mit Environment-Variablen handeln.
Könnt ihr das bestätigen? Ich hab da nämlich in der Kette einen Speicherblock welcher die Environment-Variablen enthält, da steht am Anfang jedoch PATH=<Pfad> und erst dannach kommt COMSPEC=....
Jetzt bin ich etwas verunsichert was das betrifft.....
lg, Markus