Frage von JamesOffice, 37

wie viel Speicher darf ein Programm maximal belegen, wenn BS kein Paging unterstützt?

Hallo zusammen, es wird mich mal interessieren, wie viel Speicher ein Programm maximal belegen darf, wenn das Betriebssystem kein Paging unterstützt. Angenommen dass z.b mein Physikalischer Speicher 128 MB Groß ist und das der Kernel z.B 23 MB braucht? darf das Programm 105 MB überschreiten?! wenn ja wie?! Herzlichen Dank im Voraus!

Antwort
von wotan38, 12

Ich glaube nicht, dass in diesem Fall die 105 MB überhaupt erreicht werden können. Denn neben dem Kernel des BS laufen noch eine ganze Menge Dienste verschiedenster Art parallel mit. Man muss nur in den Taskmanager reinschauen, da sieht man diese alle. Ohne genaue Systemkenntnisse weiß man gar nicht, was diese alle so treiben. Wenn man ein Tool hat, das die augenblickliche Speicherbelegung anzeigen kann, müsstest die Antwort auf Deine Frage bekommen können, indem Du eine Umgebung nachbildest, die etwa den künftigen Anforderungen entspricht. Auf jeden Fall käme da nur ein 64-Bit-System in Frage.Es dürfte auch eine Rolle spielen, ob Du WIN, LINUX oder sonstwas verwendest. Es stellt sich auch die Frage, wie Dein Monsterprogramm organisiert ist. Wenn einzelne Programmteile in Multitasking parallel laufen, belegen diese immer aufgerundet größere Speicherblöcke als sie wirklich benötigen. Ich kann mir auf Anhieb so ein großes Programm nicht vorstellen. Hast Du da so große Tabellen drin? Oder ist da irgendwas nicht optimal organisiert? Oder ist das so eine Art von Datenbankmanager, der viel im Arbeitsspeicher erledigen muss?

Kommentar von JamesOffice ,

Herzlichen Dank für die Erklärung! Genau das ist ja ein Monsterprogramm mit ganz vielen Tabellen :) Aber soweit ich weiß werden Folgende Programme beim Systemstart ausgeführt: Firmware+Bootloader+Kernel+der erste Prozess und der shell wobei Firmware und der Bootloader zum Rechner gehören und nicht zum BS, also das heißt der Kernel, der erste Prozess und der shell werden ja im Arbeitsspeicher sitzen oder?

Kommentar von wotan38 ,

Mit Windows als solches beschäftige ich mich nur mit dem Notwendigsten. Meine Datenbankanwendung sind zwar komplex, aber keine Speichermonster. Meine grundlegenden Kenntnisse hinsichtlich Adressierung gehen bis auf die 60-ger Jahre zurück, wo ich teils noch direkt in der Hardwareentwicklung tätig war. Sehr viel hat sich bei der Adressierung seither nicht geändert, außer der damals verfügbaren Speicherkapazität und gewisse Adressierungstricks (mit Basis- und Distanzadressen), die bei DOS zum letzten Mal Verwendung gefunden haben. 

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten