THIS SECTION IS UNDER CONSTRUCTION
Объекты операционных систем: Устройства (объекты ядра) Процессы (адрессное пространство, ресурсы) единица выделения ресурсов Потоки (квантуются) единица исполнения Файлы Терминалы (экранная группа) Объекты синхронизации (семафоры, мьютексы) IPC итд. Основные задачи OS: Scheduling (квантование времени) [Multiprocessing] Виртуальная память и подкачка Разграничение доступа Authentication Athorisation ACL Обект Субъект User SYSTEM Computer Права доступа Борьба с взаимоблокировками за ресурсы Поддержка IPC (Interprocess Communication) Семафоры Мьютексы Мониторы Kernel Messages Барьеры Spin-Lock активное ожидание Планирование и оптимизация ввода/вывода Кэширование Приоритезирование (Elevator,Ближайший). Поддержка файловых систем Shared Files Memory-mapped files Управление энергопотреблением Предоставление API пользовательским приложениям
Основные современные OS: ------------------------------------------------------ Платформа OS Vendor ------------------------------------------------------ x86 MS-DOS Microsoft Windows 3.x Microsoft Windows 9x/ME Microsoft Windows NT/2K/XP/2003 Microsoft Linux * FreeBSD Berkeley university NetBSD Berkeley university OpenBSD Berkeley university OS/2, OS/2 eCS IBM BeOS, Zeta Be QNX QNX Solaris x86 Sun SCO OpenServer SCO UNIXware SCO Netware Novell ------------------------------------------------------ Mac MacOS Apple MacOS X Apple Linux * FreeBSD Berkeley university ------------------------------------------------------ Alpha Digital UNIX HP OpenVMS HP Tru64 UNIX HP Windows NT Microsoft OpenBSD Berkeley university ------------------------------------------------------ Itanium Windows XP/2003 Microsoft Linux * Tru64 UNIX HP ------------------------------------------------------ Silicon IRIX Silicon Graphics ------------------------------------------------------ HP HP-UX HP ------------------------------------------------------ RS/400 AIX IBM Linux * ------------------------------------------------------ Sun Solaris Sun Linux * BSD Berkeley University -------------------------------------------------------
User Kernel Interrupt
Микроядро - асинхронные взаимодействия нити в ядре вытесняются другими в микроядре только приметивы IPC basic scheduling Memory management (может быть снаружи)
Монолит - синхронные взаимодействия нити в ядре не вытесняются (только interrupt) Расставлять критические секции - это исскуство