001
30.01.2006, 03:25 Uhr
Hans
Library Walker (Operator)
|
Hi,
Eine einzige Quelle für alle diese Fragen gibt es nicht.
Zitat von huckleberry: |
ich wuerd zB gerne wissen wo programme geladen werden, wo lokale/globale variablen stehen, wo das betriebssystem ist,
|
Fangen wir mal von hinten an: Wo das Betriebssystem im Speicher steht, hängt vom verwendeten Prozessor ab. Bei Intel- und kompatiblen Prozessoren steht es immer am Anfang des physikalischen Speichers, d.h. ab 0x0000 0000 0000 0000. (wenn man von den Interruptsprungvektoren absieht; die davor stehen, und etwa 1 KB extra belegen.) Es gibt auch Prozessoren, bei denen das BS am Ende des Speichers liegt. Wohin Programme geladen werden, hängt davon ab, wieviel Platz das Betriebssystem für sich benötigt, und lässt sich nicht exakt vorhersagen. Im Prinzip gilt aber, das sie hinter dem BS im Speicher liegen. Lokale Variablen liegen fast immer auf dem Stack, einem vom Prozessor verwalteten besonderen Speicherbereich. Globale Variablen liegen AFAIK auf dem Heap, einem Speicherbereich, der hinter dem Bereich für Programme liegt. Wenn Du dazu mehr wissen willst, beschäftige Dich mit den Grundlagen der Assemblerprogrammierung.
Zitat: |
nach welchem schema er mir meine ...int iZahl;... im code immer unter 0x0012ecdf speichert,
|
Das hängt vom Compiler ab, und von der Speichervewrwaltung des Betriebssystems.
Zitat: |
wieso meine helloworld.exe immer in der naehe von 0x"sowieso" ist.
|
0x"sowieso" ist nicht sehr genau, aber immer richtig, weil es eine Möglichkeit ist, hexadezimale Zahlen zu notieren.
Zitat: |
wo man mal schenll nachgucken kann.
|
Ich weis jetzt zwar nicht, was Du schnell nachgucken willst, aber vielleicht hilft Dir das hier ja weiter.
Zitat: |
was die unterschiede in unix/linux, windows (und evtl mac) sind?
|
Was die Unterschiede zwischen Unix und Windows angeht, musst Du mal hier im Forum stöbern, da findest Du immer wieder mal einen Beitrag dazu. Im wesentlichen hängt es mit den Konzepten der Speicherverwaltung, Benutzerverwaltung und Rechteverwaltung sowie der Ansteuerung der Hardware zusammen. Dazu gehört denn auch, was es für Gerätetreiber gibt, und wie die programmiert sein müssen. Genaueres erfährst Du z.B. hier.
Zitat: |
- ich glaube in NIX werden die bytepaare umgedreht???? -
|
Nö, das ist die sogenannte "Endian-Geschichte", und die hat mit Prozessortypen zu tun. Little Endian bei Intel & Co, Big Endian z.B. beim PowerPC.
Zitat: |
wo halt gut erklaert ist, wie der speicher funiktionert?
|
Dann wäre da noch, wie es auf der Hardwareebene zugeht, also wie Transistroren miteineander verschaltet sind, aber das war ja nicht das Thema... Falls Doch, dann ist das hier meine beste Empfehlung.
Zitat: |
wenn es so eine quelle, buch, eBook, seite, etc gibt, weare ich euch dankbar mir diese mitzuteilen...
|
Nun, ein paar hab ich Dir genannt, mehr fällt mir gerade nicht ein, weil es sich das Thema in zu viele unterschiedliche Teilgebiete zerlegen lässt.
Hans -- Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung. Dieser Post wurde am 30.01.2006 um 03:57 Uhr von Hans editiert. |