[Thema] [ASM] Wie funktioniert das Betriebsystem?

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von myth2806, 19. August 2007 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 19. August 2007
    [ASM] Wie funktioniert das Betriebsystem?

    Hey leutz,

    die Überschrift hört sich warscheinlich sehr allgemein und weitgreifend an aber ich will hier das ganze erstmal spezialisieren. Mich interessiert wie es ein Betriebsystem schafft mehrere Programme "gleichzeitig" laufen zu lassen. Ich weiß zwar, dass die Programme nur kurz nacheinandere Zugriff auf den Prozessor erhalten, aber trotzdem wundert es mich wie das ganze mit den Registern funktionieren kann. Da zB ein C-Programm doch 1zu1 in ASM übersetzt wird, und man in ASM ohne Register nicht weiterkommt, würden dann doch sämtliche Register von dem Programm überschriben werden und das Betriebsystem wäre sozusagen nicht mehr aktiv ?(.
    Oder die allgemein Frage: Wohin wird ASM-Code gesteckt, der gerade ausgeführt werden soll? Arbeitsspeicher? Register? Irgendein Cache?

    Wenn mir das mal jemand erklären könnte oder ein entsprechenden link hat wäre ich sehr dankbar. :]

    greez myth
     

  2. Anzeige
  3. #2 19. August 2007
    AW: [ASM] Wie funktioniert das Betriebsystem?

    Hallo,
    deine Frage is garnicht so einfach zu erklären.

    Mal ganz allgemein ausgedrückt haben alle Multitaking Betriebssystene einen Scheduler, der weiss welche Prozesse gerade existieren. Den gibts in Hardware (nennt sich TTS oder vllt TSS, kA grad^^) oder in Software (so machts Windows, Linux usw...), wobei die Softwarelösung die effizientere, aber auch kompliziertere ist, da sich das Betriebssystem komplett selber um die Prozesse kümmern muss.
    Nachdem die Zeit, die dem Prozess zugeordnet wurde, abgelaufen ist, lädt der Scheduler alle Registerinhalte von dem Prozess in seine Datenbank. Danach sucht er sich den Prozess aus, der als nächstes drankommen soll, lädt dem seine Register und lässt den dann weiterlaufen.

    Ich hoffe ich hab das gut genug erklärt ^^ Ist eigentlich alles noch VIEL komplizierter und ich weiß das auch ned alles.

    Instruction-Cache auf der CPU
     
  4. #3 19. August 2007
    AW: [ASM] Wie funktioniert das Betriebsystem?

    Ich hab mal ne Seite gefunden die viele Fragen beantwortet:

    http://www.stickybit.de/wissen/computer/index.htm

    Wenn ich das ganze auf der Seite richtig verstanden habe läuft eigentlich die ganze Zeit nur ein
    Programm ab. Es wird nur die CPU in Betrieb genommen und das BIOS ausgeführt, welches dann
    die weiteren Hardware lädt wie Arbeitspeicher, Grafikkarte, Soundkarte, Drucker, Laufwerke, Maus,
    Tastatur, ...
    Nach dem die Geräte im Arbeitspeicher Registriert wurden wird vom BIOS die Laufwerke nach
    "Eintrittspunkten" von Betriebsystem durchsucht und je nach Einstellungen dann
    ausgeführt. BIOS wird dann beendet und dann läuft als einzigstes Programm nur noch
    das Betriebssystem, welches dann die weiteren Aufgaben übernimmt.

    Vom Betriebsystem werden danach die geladenen Prozesse weiter Verwaltet und die Register, Daten
    im Arbeitsspeicher gespeichert. Wann die weiteren Maschinenanweisungen jedes einzelnen Prozesses
    weiter ausgeführt werden bestimmt das Betriebsystem. Dabei werden die virtuell gespeicherten Register
    teilweise wieder in die CPU geladen und weiter bearbeitet.

    Mfg Rushh0ur
     
  5. #4 19. August 2007
    AW: [ASM] Wie funktioniert das Betriebsystem?

    Es hat ja schon jemand gesagt, dass Multitaskingsysteme einen Scheduler haben. Der verwaltet das sozusagen. Es gibt verschiedene Methoden, je nachdem und die haben dann verschiedene Durchschnittswartezeiten.
    Schau einfach mal hier ( Prozess-Scheduler ), da sind die verschiedenen Strategien, die es beim Scheduling gibt.
    Das andere, also wo das alles abläuft, hab ich zwar mal lernen müssen, aber wieder vergessen ^^
     
  6. #5 19. August 2007
    AW: [ASM] Wie funktioniert das Betriebsystem?

    OK danke schonmla an euch. Allerdings wäre da noch das Problem, dass wenn der Scheduler nun einem Prozess die CPU "zuordnet" der Scheduler doch tzortdem noch "nicht mehr aktiv" ist weil doch der prozess jetzt die cpu beansprucht. wo werden die register-daten vom scheduler während ein anderer prozess läuft gespeichert? und wie bringt man dann noch die cpu dazu nach einer gewissen zeit den scheduler wieder aufzurufen?

    hoffentlich könnt ihr mir da noch weiterhelfen ?( :]

    greez myth
     
  7. #6 19. August 2007
    AW: [ASM] Wie funktioniert das Betriebsystem?

    Ich glaube, darüber kann man ein ganzes Buch schreiben. Kauf dir lieber eins. Unser Lehrer hat uns das hier empfohlen: Moderne Betriebssysteme
    Soll sehr gut sein, aber nicht immer gut übersetzt.
     
  8. #7 19. August 2007
    AW: [ASM] Wie funktioniert das Betriebsystem?

    ja dann würde ich es sicher in allen ausführungen verstehen aber es muss doch dabei irgendein grunprinzip geben. mich interessiert das halt nur grade und deswegen will ich mir jetzt nicht extra für 25 € ein Buch kaufen XD

    trotzdem thx

    greez myth
     
  9. #8 19. August 2007
    AW: [ASM] Wie funktioniert das Betriebsystem?

    1.)
    Die Daten der einzelnen Prozesse werden im RAM gespeichert.

    2.)
    Über Interrupt s, z.b. dem Timerinterrupt, der immer nach einer vorher bestimmten Zeit aufgerufen wird und die Kontrolle an dem in der IDT( Deskriptor (Prozessor) ) dafür zugeordneten Code übergibt.

    mfg r90
     
  10. #9 21. August 2007
    AW: [ASM] Wie funktioniert das Betriebsystem?

    OK alles klar. vielen dank :]

    greez myth

    //closed
     

  11. Videos zum Thema
Die Seite wird geladen...