В интернете самой любимой и обсуждаемой темой для дискуссий являются холивары. Из самого названия видно, что это войны и-за «религиозных» пристрастий. Хоть и говорят, что в споре рождается истина, но это абсолютно не так. Очень часто спорщики являются «религиозными» фанатами и они не пытаются определить реально лучшую сторону, а просто поливают грязью оппонента и символ его «религии».
Самой благодатной почвой являются холивары по поводу операционных систем. А можно ли прекратить их раз и навсегда и сделать идеальную систему? Попробуем разобраться
Очень часто в холиварах идет опускание винды (сам делаю это часто и с удовольствием). Но многие не готовы отказаться от нее только из-за небольшого набора приложений, который им очень нужен в работе. Значит, в качестве ядра идеальной системы, можно использовать что угодно, но необходимо обеспечить поддержку виндового софта. Под линукс есть огромное количество эмуляторов (в районе 50 штук), посмотрите сравнительную табличку сами! Там есть эмуляция чего угодно, не только винды. Сам пообщался с некоторыми и заработали 99% программ и игрушек, проверенных лично мной. Можно было попробовать «уболтать» программу, но не в этом дело. Неполная поддержка той или иной программы ограничена только закрытостью винды. Достаточно открыть полностью исходный код (хотя бы по судебному решению) и очень скоро поддержка программ будет полной.
Идеальная Операционная Система, далее просто ИОС :-) должна поддерживать режим работы реального времени. В QNX это реализовано, можно за основу брать его ядро и прикручивать все остальное.
ИОС должна поддерживать все существующие бинарники под данный процессор, поддерживать порты и сборку из исходников. На самом деле это наиболее простая работа из всего пути к идеальной системе.
ИОС должна иметь модульное и конфигурируемое ядро. В Линуксе это реализовано, заимствуем оттуда.
Систему доступа к файлам сделать чуть погибче, чем в юниксах и заметно порезать от виндового варианта. Систему принадлежности к группам, взять из винды и подризтовать крупным рашпилем.
Для хранения информации о сети нужна служба единого каталога. АД реализована безобразно, поэтому взять ее за основу, выкинуть половину и чуть-чуть доработать что осталось.
Файловая система должна быть обязательно журналируемой, с возможностью полного восстановления данных при внезапном отключении питания. НТФС на это абсолютно не годится, сыпется очень легко. Причем теряешь не только недописанный файл, но иногда целый список каталогов и файлов. Утилиты восстановления могут восстановить файлы, в которых будет каша. Берем что то типа ext4, ReiserFS.
Система безопасности — самый больной вопрос. Взять за основу OpenBSD и накручивать, накручивать, накручивать. Хотя она уязвима не из-за реализации конкретных программ и модулей, а из-за фундаментальных брешей в используемых сетевых протоколах. Только придумать идеальный протокол и в короткие сроки, да еще малой кровью, поменять его не получится. Так же должны быть встроены фильтр пакетов и система обнаружения вторжений. Причем реализовать это на разных «кольцах» процессора. В процессорах серии х86 заложено 4 кольца, в винде из них используется всего 2: привилегированный и пользовательский. В ИОС надо задействовать все 4 кольца, причем нижний уровень — это не привилегированный, а система контроля работы ядра системы. Этакий IDS и эвристический анализатор антивируса для защиты критических мест системы от малвари. Даже попав на уровень драйверов или уровень ядра, вирус все равно должен оставаться на уровень выше системы защиты.
Как ни крути, но идеальная система подразумевает полное опенсорсивание всех имеющихся на рынке ОС-ей и совместную работу над ИОС. Фанаты опенсорса, в нужном направлении идете! Поддержка одними юниксами бинарников других юниксов, приближает их к понятию ИОС. Разработка все новых и новых эмуляторов так же приближает наступление ИОС. Работа в этом направлении идет. Постепенно «там» или «там» проступают весьма зримые черты ИОСа. Достаточно постепенно собирать все лучшее и конструктор станет тем самым ИОСом. Количество перерастет в качество. Передирание различными ОСями друг у друга «фенечек» и «мулечек» и является показателем, что «светлое будущее» приближается. Но меееееедленно. И только мелкософт своими закрытыми стандартами и прочей ерундой вставляет палки в колеса прогресса и вообще тянет всех на дно. БУДУЩЕЕ — ЗА ОПЕНСОРСОМ!
Если кто то разовьет тему, то я буду только рад. Возможно тема получит необходимое развитие и привлечет внимание специалистов, занимающихся непосредственной работой над современными ОС-ами. И возможно какие то из перечисленных пунктов мы сможем увидеть в ближайших дистрибутивах.
P.S. Я абсолютно не задумывал это сочинение в качестве рекламы опенсорсу. Я просто начитался холиваров и размышлял «вслух» о возможности создания ИОС-а. Постепенно пришел к выводу, что опенсорс и есть луч света, указывающий направление в «светлое будущее».
Самой благодатной почвой являются холивары по поводу операционных систем. А можно ли прекратить их раз и навсегда и сделать идеальную систему? Попробуем разобраться
Очень часто в холиварах идет опускание винды (сам делаю это часто и с удовольствием). Но многие не готовы отказаться от нее только из-за небольшого набора приложений, который им очень нужен в работе. Значит, в качестве ядра идеальной системы, можно использовать что угодно, но необходимо обеспечить поддержку виндового софта. Под линукс есть огромное количество эмуляторов (в районе 50 штук), посмотрите сравнительную табличку сами! Там есть эмуляция чего угодно, не только винды. Сам пообщался с некоторыми и заработали 99% программ и игрушек, проверенных лично мной. Можно было попробовать «уболтать» программу, но не в этом дело. Неполная поддержка той или иной программы ограничена только закрытостью винды. Достаточно открыть полностью исходный код (хотя бы по судебному решению) и очень скоро поддержка программ будет полной.
Идеальная Операционная Система, далее просто ИОС :-) должна поддерживать режим работы реального времени. В QNX это реализовано, можно за основу брать его ядро и прикручивать все остальное.
ИОС должна поддерживать все существующие бинарники под данный процессор, поддерживать порты и сборку из исходников. На самом деле это наиболее простая работа из всего пути к идеальной системе.
ИОС должна иметь модульное и конфигурируемое ядро. В Линуксе это реализовано, заимствуем оттуда.
Систему доступа к файлам сделать чуть погибче, чем в юниксах и заметно порезать от виндового варианта. Систему принадлежности к группам, взять из винды и подризтовать крупным рашпилем.
Для хранения информации о сети нужна служба единого каталога. АД реализована безобразно, поэтому взять ее за основу, выкинуть половину и чуть-чуть доработать что осталось.
Файловая система должна быть обязательно журналируемой, с возможностью полного восстановления данных при внезапном отключении питания. НТФС на это абсолютно не годится, сыпется очень легко. Причем теряешь не только недописанный файл, но иногда целый список каталогов и файлов. Утилиты восстановления могут восстановить файлы, в которых будет каша. Берем что то типа ext4, ReiserFS.
Система безопасности — самый больной вопрос. Взять за основу OpenBSD и накручивать, накручивать, накручивать. Хотя она уязвима не из-за реализации конкретных программ и модулей, а из-за фундаментальных брешей в используемых сетевых протоколах. Только придумать идеальный протокол и в короткие сроки, да еще малой кровью, поменять его не получится. Так же должны быть встроены фильтр пакетов и система обнаружения вторжений. Причем реализовать это на разных «кольцах» процессора. В процессорах серии х86 заложено 4 кольца, в винде из них используется всего 2: привилегированный и пользовательский. В ИОС надо задействовать все 4 кольца, причем нижний уровень — это не привилегированный, а система контроля работы ядра системы. Этакий IDS и эвристический анализатор антивируса для защиты критических мест системы от малвари. Даже попав на уровень драйверов или уровень ядра, вирус все равно должен оставаться на уровень выше системы защиты.
Как ни крути, но идеальная система подразумевает полное опенсорсивание всех имеющихся на рынке ОС-ей и совместную работу над ИОС. Фанаты опенсорса, в нужном направлении идете! Поддержка одними юниксами бинарников других юниксов, приближает их к понятию ИОС. Разработка все новых и новых эмуляторов так же приближает наступление ИОС. Работа в этом направлении идет. Постепенно «там» или «там» проступают весьма зримые черты ИОСа. Достаточно постепенно собирать все лучшее и конструктор станет тем самым ИОСом. Количество перерастет в качество. Передирание различными ОСями друг у друга «фенечек» и «мулечек» и является показателем, что «светлое будущее» приближается. Но меееееедленно. И только мелкософт своими закрытыми стандартами и прочей ерундой вставляет палки в колеса прогресса и вообще тянет всех на дно. БУДУЩЕЕ — ЗА ОПЕНСОРСОМ!
Если кто то разовьет тему, то я буду только рад. Возможно тема получит необходимое развитие и привлечет внимание специалистов, занимающихся непосредственной работой над современными ОС-ами. И возможно какие то из перечисленных пунктов мы сможем увидеть в ближайших дистрибутивах.
P.S. Я абсолютно не задумывал это сочинение в качестве рекламы опенсорсу. Я просто начитался холиваров и размышлял «вслух» о возможности создания ИОС-а. Постепенно пришел к выводу, что опенсорс и есть луч света, указывающий направление в «светлое будущее».