>>> stránka zatím rozpracována a bude ještě měněna <<<
USER - Uživatel
Soubory: INCLUDE\KERNEL\USER.INC, KERNEL\USER.ASM.
Obsluha uživatele spočívá v evidenci nastavení a parametrů uživatele.
|
Struktura USER slouží k popisu jednoho uživatele. Na začátku struktury je položka seznamu uživatelů (záhlaví seznamu je UserList). USER_Hash je položka hashovaného seznamu uživatelů. Hashovaný seznam uživatelů slouží k rychlému vyhledání uživatele podle jeho identifikačního čísla. USER_ProcList je záhlaví seznamu procesů patřících uživateli. USER_Flags obsahuje příznaky. Příznak USER_ADMIN znamená, že uživatelem je administrátor a proces má tedy administrátorská (tedy neomezená) práva. USER_ID je identifikační číslo uživatele. ROOTUSER_ID je předdefinované číslo uživatele s administrátorskými (tedy neomezenými) právy. USER_National je ukazatel na popisovač národnostních informací NATIONAL.
|
Makro USERINI slouží k vytvoření inicializované definice uživatele USER. Prvním parametrem makra je ukazatel na následujícího uživatele. Druhým parametrem je ukazatel na předešlého uživatele. Třetím parametrem jsou příznaky, čtvrtý parametr je uživatelské identifikační číslo a pátým parametrem je ukazatel na implicitní popisovač národnostních informací.
|
K rychlému vyhledání uživatele podle jeho identifikačního čísla slouží hashovaný seznam UserHashList. Vyhledávacím klíčem seznamu je spodních 8 bitů identifikačního čísla uživatele.
|
Makro CURRENT_USER vyhledá popisovač uživatele vlastnícího aktuální proces. Parametrem makra je jméno registru, ve kterém bude navrácen ukazatel na popisovač uživatele USER. Při vyhledání popisovače se využívá makro CURRENT_PROC, které navrátí ukazatel na aktuální proces. Ze struktury aktuálního procesu je načten ukazatel na uživatele, který je vlastníkem aktuálního procesu.