Sleep (systémové volání)

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Systémové volání sleep umožňuje přepnout počítačový program (resp. proces, úlohu nebo vlákno) do stavu spánku. To znamená, že program je po určitou dobu neaktivní. Po vypršení časového intervalu nebo po přijetí signálu či po přerušení se obnoví normální provádění programu.

Typické volání sleep očekává jako parametr časovou hodnotu, jež určuje minimální dobu, po kterou má proces spát. Parametr se typicky udává v sekundách; některé operační systémy dovolují jemnější rozlišení, například milisekundy nebo mikrosekundy.

Nepřerušitelný spánek

Nepřerušitelný spánek je v informatice označení stavu procesu, který nemůže být přerušen signálem. Jediná možnost vzbuzení takového procesu je, že začne být dostupný prostředek, na který se nepřerušitelným spánkem čekalo. +more Nepřerušitelný spánek se nejčastěji používá v ovladačích při čekání na dokončení I/O operace (např. pevný disk nebo síťová karta). Pokud je proces ve stavu nepřerušitelného spánku, je signál doručen poté, co se proces vrátí ze systémového volání či pasti (trap).

Proces, který je v nepřerušitelném spánku, nelze ani ukončit, protože by tím došlo k poškození interních datových struktur jádra operačního systému (nedokončení naplánované operace). Datové struktury by sice mohly být při předčasném ukončení uvedeny do pořádku, ale kód jádra by se tím zbytečně rozšířil o málo využívanou specialitu, která by mohla obsahovat skryté chyby.

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top