Összefoglalom magamnak, hogy mit értettem meg az itt tanultakból:
Nem mindegy, hogy simán hardver szinten nézzük a dolgokat OS nélkül, vagy OS-el.
OS nélkül a szál egy olyan utasítássorozat ami valamilyen külső hatásra fel tud függesztődni é
s utána folytatódni tud onnan ahol felfüggesztődött.
Eszerint a megszakításkezelő rutin is egy szál mert a végrehajtása közben jöhet másik megszakí
tás aminek a végeztével folytatódhat.
Ha viszont van operációs rendszer akkor a szál definiciója kiegészül azzal a fontos dologgal,
hogy az egy folyamaton (process) belüli szálak közös címteret használnak ami megegyezik az őket tartalmazó folyamat címterével.
Ez a kitétel viszont nem teljesül? az megszakításkezelő rutinokra mert azok a kernel címterében futnak, nem a process címterében.
Vagy mégis?
https://www.sciencedirect.com/topics/engineering/interrupt-service-rout…
Itt azt írja, hogy
"Although an ISR might move data from a CPU register or a hardware port into a memory buffer, in general it relies on a dedicated interrupt thread, called the interrupt service thread (IST), to do most of the required processing."
tehát az ISR csak szól a kernelnek, hogy izé van, rúgd be az IST-t - ami ugyanolyan ütemező által ütemezett szál mint a többi - és a kernel szépen megfelelő prioval beütemezi az IST-t. Viszont mivel az IST a kernel része, ezért a kernel címterében fut, a process címteréhez nem fér hozzá. DE ettől még az ISR hozzáférHETNE?