Betriebssystem Programmierung



  • Hallo,

    sagen wir ich möchte in meiner Anwendung Funktionen der API des Betriebssystems verwenden. Meine Anwendung läuft in einem anderen Prozess wie das Betriebssystem.
    Wie funktioniert das also dass wenn ich z.B. operatingsystem.showExplorer() mache, das Betriebssystem wirklich den Explorer öffnet obwohl das Betriebssystem ein anderes Programm ist...Läuft das wohl auch über URL and sockets ? So also ob ich Daten zwischen einem lokalen Client und Server austausche?



  • gute Frage. Vieleicht über Remote Procedure Call. Oder geht das nur bei Netzwerk



  • es_muellert_wieder schrieb:

    Läuft das wohl auch über URL and sockets ?

    Nein. (D.h Manchmal in Spezialfällen)

    es_muellert_wieder schrieb:

    So also ob ich Daten zwischen einem lokalen Client und Server austausche?

    Ja.

    Das ist Interprozesskommunikation.



  • meinst du System Calls?
    Dabei werden die Funktionsargumente abgelegt (z.B. am Stack oder in bestimmten Registern), und dann wird ein Interrupt ausgelöst. Dadurch wird die Kontrolle ans Betriebssystem übergeben, dieses schaut anhand der Daten am Stack oder in den Registern nach was zu tun ist und arbeitet seine Aufgaben ab.
    Schließlich wird danach wieder ein Task Wechsel durchgeführt, sodass wieder das ursprüngliche Programm ausgeführt wird.

    (das ist natürlich stark vereinfacht dargestellt)



  • Jeder Prozess hat doch seinen eigenen Stack. So kann das also eher nicht funktionieren.



  • Ungut schrieb:

    Jeder Prozess hat doch seinen eigenen Stack. So kann das also eher nicht funktionieren.

    Warum sollte das ein Problem sein?


  • Mod

    Ungut schrieb:

    Jeder Prozess hat doch seinen eigenen Stack. So kann das also eher nicht funktionieren.

    😕 Na und? Da hat das OS doch kein Problem mit, das kann dir einfach in den Speicher gucken, falls nötig.

    Ich kann zwar nicht glauben, dass ich in einem blurry-Thread antworte, aber da es anscheinend auch andere interessiert: Das Thema ist auf Wikipedia mit Folgelinks ziemlich gut beschrieben, für jeden Grad an technischer Neugierde.


Anmelden zum Antworten