Архитектура современных операционных систем
65 1) корректирует глобальные переменные системных часов; 2) уменьшает оставшееся время выделенного кванта активного про- цесса; 3) подсчитывает статистические данные, такие как общее время рабо- ты в пользовательском режиме, системном режиме; 4) увеличивает на 1 поле CPU активного процесса, просматривается список процессов ожидающих завершения запусков задач; 5) рассматривается список запусков процессов по времени. При вызове процедур драйвера из соответствующей таблицы им переда- ются определенные параметры, например для дисков функции open передаются следующие параметры: 1) младший номер устройства; 2) режим открытия (чтения, записи, чтения/записи); 3) указатель на эффективные UID и GID. В случае вызова функции strategy в качестве параметра для дисков пере- дается целая структура buf, содержащая следующую информацию: 1) флаги, определяющие какую операцию ввода/вывода необходимо вы- полнить (чтение, запись, синхронизацию). 2) указатели на двунаправленные списки используемых и свободных бу- феров. 3) адрес буфера, в который нужно прочитать данные с диска, или из кото- рого нужно записать. Функция strategy для диска работает только с системной памятью, и не пользуется буферами процесса. Это связано с тем, что между драйвером диска и пользовательским процессом существует несколько про- граммных слоев: файловая система и дисковый кэш. 4) номера устройства (старший/младший). 5) номер блока на диске, который должен быть считан или записан. 6) количество байт, подлежащих чтению/записи. 7) размер блока диска.
Made with FlippingBook
RkJQdWJsaXNoZXIy MTY0OTYy