Но в ядре linux/BSD есть свои функции для работы с DMA, так что тащить за собой HAL нам совершенно необязательно, тем более что драйвера взаимодействуют с DMA не напряму.
Fedora Core на ней, конечно жутко тормозит (на P-III 733 работать вообще невозможно но Debian с KDE идет вполне нормально.
Вопрос совсем не так глуп, каким кажется.
Раньше с почтой работал под виндой в Thenderbird, где хранится куча всякой нужной переписки.
А все потому, что VMWare представляет собой закрытый ящик, отгороженный от базовой операционной системы толстой стеной эмулятора.
Когда-то у Microsoft была идея разделить ядро на системно-зависимую и системно-независимую часть, перенос чтобы упростить перенос Windows на другие платформы, но уже во времена NT 4.x все перемешалось и большая часть системно-зависимых функций попала в ntoskrnl.
Если мы сумеем заставить его заработать под linux ом, все проблемы решатся сами собой.
Да, различий очень много, но что-то общее между ними все-таки есть.
Как ни крути, а любой уважающий себя unix-программист вынужден держать на компьютере десяток осей различных пород, чтобы тестировать свои программы на совместимость.
Достаточно лишь написать тонкий и несложный переходник между драйвером и операционной системой, принимающий запросы и транслирующий их по всем правилами этикета а так же перетащить библиотеку функций, необходимых драйверу для работы.
В нем осталось небольшое количество действительно низкоуровневых функций, непосредственно взаимодействующих с оборудованием, par exemple, с портами и с DMA.
Но в ядре linux/BSD есть свои функции для работы с DMA, так что тащить за собой HAL нам совершенно необязательно, тем более что драйвера взаимодействуют с DMA не напряму.
Тут и сканеры, и мультимедиа, и конечно же видео-карты, издавна славящееся отсутствием общих стандартов и пестротой know-how.
Главный недостаток unix-подобных систем отсутствие нормальных драйверов под кучу вкусного оборудование, с которым Windows справляется без проблем.
Ниже находится только слой абстрагирования от оборудования или сокращенно HAL (Hardware Abstraction Level).
Et de plus, ntfs не стоит на месте и хоть и медленно, но совершенствуется, в смысле видоизменяется.
D'autant plus que, при выходе новых версий Windows-драйвера, процедура обновления linux/BSD порта существенно обновляется, просто скопировал поверх старого файла и все.
Как говорится, "есть хакеры в русский селениях, в горящий компьютер войдут, драйвер напишут и Гейтсу хвост оторвут но.
Тут и сканеры, и мультимедиа, и конечно же видео-карты, издавна славящееся отсутствием общих стандартов и пестротой know-how.
Ядерная модель Windows NT и всех производных от нее операционных систем (как-то Windows 2000, XP, 2003, Longhorn) достаточно проста.
На "живом" компьютере переключения между ними происходят только через перезагрузку, что не есть хорошо, а виртуальные машины переключаются как карусель (главное памяти побольше иметь!).
Вот только не надо кричать, что я ни хрена не разбираюсь в программировании и что на уровне ядра linux/BSD отличается от Windows так же, как слонопотам от крокодила.
Хочешь разрабатывай программы, хочешь читай man'ы.
Рисунок 15 Windows NT изнутри, ядро на котором как на фундаменте держаться все вышеупомянутые компоненты представляет собой просто совокупность низкоуровневых функций, сосредоточенных.
EXE, а часть во внешних драйверах, к числу которых в частности принадлежит диспетчер электропитания.
D autant plus que, при выходе новых версий Windows-драйвера, процедура обновления linux/BSD порта существенно обновляется, просто скопировал поверх старого файла и все.
Может быть, подойдет драйвер от другой модели, а может быть ничего не подойдет вообще!
Высокоуровневые драйвера такие, например, как S вообще не касаются оборудования и содержат минимум системно-зависимого кода.
С внешним миром ядро связывает Диспетчер Системных Сервисов, подключенный к ntdll.
Известно, что поддержка ntfs-разделов представляет собой сплошную проблему.
На домашних и десктопных компьютерах ситуация совсем иная.
Вопрос совсем не так глуп, каким кажется.
Закинули невод, вытащили рыбку и кинули в банку.
Комментариев нет:
Отправить комментарий