Верхом на стрекозе Евгений Зобнин aka j1m Хакер, номер #088, стр. 088-090-2 Многоядерные процессоры мы уже можем пощупать и опробовать, но на большую распространенность таких камней можно рассчитывать только через несколько лет. Чтобы решить проблему блокировки ядра, которая приводит к невозможности одновременного выполнения системных вызовов процессами, выполняющимися на разных процессорах, в DragonFly используется уникальная модель Легковесных Нитей Ядра (LWKT). В такой модели на каждый процессор выделяется независимый планировщик задач, а каждому процессу ставится в соответствие легковесный поток внутри ядра. Для подобной реализации пришлось коренным образом переработать внутреннюю структуру ядра и ввести механизм сообщений (такой, который используется в микроядерных ОС). Как результат, в DragonFly взаимодействие с ядром происходит с помощью сообщений, а интерфейс системных вызовов - это всего лишь обертка, которая может быть заменена, например, на объектно-ориентированный интерфейс. Кластеры - одно из ключевых направлений развития DragonFly. Чтобы повысить эффективность работы ОС в кластерах, подсистема VFS будет полностью переписана и превращена в некий сервер сообщений. Причем такое изменение архитектуры позволит в будущем вынести все файловые системы в пространство пользователя, что даже для нас, обычных юзеров, есть большой плюс. Также будет использоваться совершенно новая глобальная инфраструктура кэширования, которая, кроме того, что добавит гибкости в процесс управления файлами (например, позволит одновременно читать и писать один и тот же файл нескольким процессами), но и даст выигрыш в производительности. Для DragonFly планируется создать новую систему управления пакетами, обновление ОС с ее помощью станет простым и приятным занятием. Специально для реализации системы пакетного менеджмента был введен новый тип файлов - вариантная символическая ссылка, которая в зависимости от некоторого условия указывает на разные файлы. Для динамического создания файлов устройств (/dev) решено использовать демон devd, а не загружать ядро лишним кодом, как сделано в FreeBSD. И наконец, по заявлению Мэта, уже в DragonFly-1.5 появится файловая система ZFS, портированная из OpenSolaris. Несмотря на кажущуюся сервер-ориентированность новой ОС, Мэт не перестает заявлять, что его ОС является многоцелевой, то есть в функциональном плане не будут обижены ни владельцы огромных кластеров, ни пользователи домашних ПК. [ловим стрекозу] Теория - теорией, но и о практике пора подумать. В этом разделе повествование пойдет об установке и использовании "Стрекозы". Для начала нам нужно раздобыть дистрибутив самой ОС, и здесь мы сталкиваемся с первой проблемой. Дело в том, что на данный момент купить где-либо диск с DragonFly практически невозможно, только на www.linuxcenter.ru распространяется 4-дисковая, но старая нестабильная версия 1.1, в придачу с ужасной подборкой пакетов. Остается один способ - скачать iso-образ с одного из зеркал проекта. Для этого вооружаемся wget'ом или другой программой и качаем следующий файл: dl1.machdep.com/dfly-1.4.0_REL.iso.gz (~80 Мб). (На прилагаемом к журналу диске ты также можешь найти последнюю версию DragonFlyBSD - прим. ред). Рекомендую сразу создать раздел для новой ОС с помощью fdisk или другой подобной программы. |