LINUX.ORG.RU

Сообщения dump

 

Объясните механизм работы работы dentry- и inode кэшей

Насколько я знаю, в виртуальной файловой системе unix есть dentry и inode кэши. Не совсем понятен механизм их работы: 1)Какие dentrys и inod'ы находяться в кэше сразу после загрузки системы? Насколько я понял, в кэш попадает dentrys корневого каталога, т.е. номера файлов каталогов /usr, /bin и т.д. и их inod'ы? 2)Каков алгоритм обработки системного вызова open?

dump
()

Объясните иерархию драйверов

Как известно драйвер - это модуль ядра, для управления внешними устройствами. Ну то есть, процессор обмениваеться сигналами с устройствами и те выполняют указанные процессорами команды. Но ведь устройства подключаются не непосредственно к слоту процессора, а к шинам южного или северного мостов. Как правило к шинам южного моста, в котором установлены контроллеры шин, для преобразования сигнала из слота процессора в свой, внутренний «шинный» сигнал. Так вот получается, что внутри ОС есть два уровня драйверов - драйвер непосредственно шинного контроллера, расположенного в южном или севрном мосту, имеющий свой api, к которому подключаеться драйвер непосредственно устройства? Вот к примеру, драйвер usb-принтера - есть драйвер принтера, который на основе системных вызовов из приложений формирует команды для принтера и посылает их к нему используя api драйвера контроллера usb-шины в южном мосту?

dump
()

Буферы сокетов находяться в пространстве ядра?

Где находяться передающий и принимающий буферы сетевых сокетов(да и вообще буферы ввода-вывода) в ядре Linux(Unix вообще) или в пространстве пользовательского процесса, который открыл эти сокеты?

dump
()

RSS подписка на новые темы