Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Allgemeines (OffTopic) » UNIX VM

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
31.01.2008, 19:50 Uhr
mike
Pinguinhüpfer
(Operator)


Hallo

Ich hab bald Prüfung und bin beim Lernen am Verzweifeln :S Wenn man googeld wird man nicht schlau - der Tannebaum verwirrt mich und lässt immer mehr Fragen offen :S

Userspace Prozess hat 4GB:
0 - 2GB: gesperrter Bereich - data - text - BSS - <frei> - Stack
über 2GB wird das Kernel Image reingemapped. In Kernel nutzt auch nur virtuelle Adressen.

Stimmt das bis daher?

Man findet im google viele Folien wo der Stack bei 4GB oben klebt - die mappen den kernel dann anscheinend gar nicht rein :S

Nun meine Fragen
* Warum mapped man das Kernel Image rein? Für die Treiber brauc ich ja nur gewisse Pages reinmappen oder?
* Warum gibt es Folien wo der Stack bei 4GB oben klebt?

Danke im Voraus!!
lg
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
31.01.2008, 20:05 Uhr
0xdeadbeef
Gott
(Operator)


Jeder Prozess hat seinen eigenen virtuellen Adressraum. Typischerweise fängt der Stack dabei ganz hinten (oben) an, und wächst dann nach vorn (unten). Also von 0xffffffff in Richtung 0x00000000. Unten wird in aller Regel das Code-Segment angesetzt, darüber der heap, der dann nach oben wächst. Den Kernel sieht der Prozess gar nicht, und das ist auch gut so.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
31.01.2008, 21:03 Uhr
mike
Pinguinhüpfer
(Operator)


Super Danke

Hab jetzt noch einen Linux Sheet gelesen - die mappen wieder diesen Kernel rein :S
Linux gibt nur 3 - 3.5GB her und mapped oben den Kernel rein welcher im Usermode unsichtbar ist und im Kernelmode sichtbar wird. Ist das dazu gut damit er schneller auf virtuelle Adressen im Kernel zugreifen kann?
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
31.01.2008, 21:08 Uhr
0xdeadbeef
Gott
(Operator)


Hmmm...das sollte mich wundern. Wahrscheinlich ist es irgendein Performancehack, aber in einer anderen Richtung. Ich könnte mir vorstellen, dass der Kernel intern Kernel-Threads und Userspace-Prozesse über einen Kamm schert, und dass dieses Arrangement die Handhabung vereinfacht, aber da rate ich nur. Befrag mal die LKML oder so, vielleicht erklärt es dir jemand.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
31.01.2008, 21:20 Uhr
mike
Pinguinhüpfer
(Operator)


Ich bin sowieso verwirrt - Windows macht das wieder komplett anderes :S

Aber ich hab grade eine super Folie gefunden:
www.eecs.harvard.edu/~mdw/course/cs161/notes/linuxvm.pdf

Scheint ziemlich neu zu sein. Und Grund steht auch dabei "This allows kernel to read/write user data just using pointers." Sehe *den* Vorteil aber da nicht wirklich raus - vl. erspart er sich die Sucherei in den Tables ...

Naja - ich werde nach dem Tannenbaum gehen und für die Prüfung das beste hoffen

Danke,
lg
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ Allgemeines (OffTopic) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: