Assembler und Betriebssystem
-
Habe vor Kurzem mal mit Assembler angefangen und wollte mal wissen wie das ist mit dem Betriebssystem. Hat das irgendwelche Auswirkungen auf die Programme, da die doch eigentlich Prozessorabhängig sind und das Betriebssystem nicht berühren?
Und wie ist das mit den Registern bei Multitasking? Gibt es mehrere gleiche Register für mehrere Programme oder werden die vom Betriebssystem immer wieder für das entsprechende Programm ausgetauscht?
-
1. Prozessor- / OS-Abhängigkeit
ein
XOR AX, AX ADD AX, 3
wird wohl auf jedem x86 unter jedem Betriebssystem laufen. Willst du jedoch zB. direkt auf die Hardware (Ports) zugreifen, so musst du dich schon darum kümmern, ob/wie das OS dir dies erlaubt. Das OS "berührt" in der Hinsicht dein Programm, da es das Environment stellt, in welchem dein Programm ausgeführt wird. Du musst die gegebenenfalls vorhandenen "Spielregeln" beachten.
2. Task-Switching
Das betreffend versuchst du wahrscheinlich am besten, die Konzepte im Protected Mode des 80x86 zu verstehen. Er liefert die Grundlage für sog. Task-Switches.
Greetz, Swordfish