Форум: "Потрепаться";
Текущий архив: 2005.01.30;
Скачать: [xml.tar.bz2];
ВнизОС будущего - как вы ее себе представляете? Найти похожие ветки
← →
VEG © (2005-01-06 16:49) [0]Давайте забудем о существующих ОС как об устаревшем стереотипе. Какой бы вы хотели видеть ОС будущего?
Мне кажется, что база ОС должна быть максимально универсальна, исполняться на любых процессорах, чтобы ее можно было устанавливать не только на компьютер, но и прошивать в различные, даже самые простые электроприборы в стиле стиральных машин.
Как вариант - пишется какая-то база ОС на каком-нибудь мощнейшем интерпретируемом языке в стиле FORT или Haskell, а для ее, соответсвенно, для каждого типа процессора свой интерпретатор. В базу не должна вешаться повязка на различные стандартные устройства ввода и вывода - это должно быть делом более высоких уровней. В базе реализованы функции работы с памятью и с портами... А дальше все это дело наращивается в зависимости от того, куда база ОС будет ставиться...
Все в ОС должно быть построено по подобному принципу. Программы - не бинарники, а исключительно код на каком-то языке...
Ну... Это только начало. Доразберем в процессе беседы.
← →
Murkt © (2005-01-06 16:52) [1]Как для меня - какая-нибудь смесь современной винды и никсов.
Поставил - все сразу работает, полностью, как нужно.
Но при желании - настроить все и полностью под себя, пересобрать весь софт ;) с нужными оптимизациями.
← →
VEG © (2005-01-06 17:09) [2]Я имел в виду со стороны построения самой ОС, как от программиста. И я просил забыть на время современные стереотипы построения ОС.
Кстати, исполнителя кода Haskell можно пробовать зашивать прямо в БИОС (супер-биос) компьютера, а все остальное - на любом носителе инфы в любом месте, будь то винчестер, флэш-карта, сетефвой диск или даже, например, прямо из глобальной сети (при условии постоянного подключения).
← →
Игорь Шевченко © (2005-01-06 17:38) [3]
> Все в ОС должно быть построено по подобному принципу
> Программы - не бинарники, а исключительно код на каком-то
> языке...
Это у кого времени девать некуда...
← →
VEG © (2005-01-06 18:07) [4]>Игорь Шевченко © (06.01.05 17:38) [3]
>Это у кого времени девать некуда...
В смысле? Я имел в виду, что программы на функциональном языке, например, Хаскел, который база ОС будет воспринимать как родной, вместо бинарного асма.
← →
esu © (2005-01-06 18:10) [5]
> Мне кажется, что база ОС должна быть максимально универсальна,
> исполняться на любых процессорах, чтобы ее можно было устанавливать
> не только на компьютер, но и прошивать в различные, даже
> самые простые электроприборы в стиле стиральных машин.
Я себе представил вирус для этой ОС и ужаснулся ;) "Холодильники взбунтовались и не хотят открываться, в перечне стран голод" Ж)
← →
Чеширский_Кот © (2005-01-06 18:12) [6]
> VEG © (06.01.05 16:49)
> Мне кажется, что база ОС должна быть максимально универсальна,
> исполняться на любых процессорах, чтобы ее можно было устанавливать
> не только на компьютер, но и прошивать в различные, даже
> самые простые электроприборы в стиле стиральных машин.
а потом компанию, создавшую такую ось, засудит антимонопольный комитет, имхо...
← →
VEG © (2005-01-06 18:14) [7]>esu © (06.01.05 18:10) [5]
К чему это? Если защита у базы ОС будет на голову выше, чем у Линукс, и, тем более, у Виндовз. И как вирус сможет проникнуть в локальный микроконтроллер той же стиральной машины? И как он исполнится без можклей, которые будут ставиться на ОС для ПК? Как минимум, если даже вирус ничего не будет делать, кроме как стучать по портам, откуда он узнает их предназначение в конкретной машине, если это может быть тот же контроллер дышания в дыхательных аппаратах?
← →
DiamondShark © (2005-01-06 18:16) [8]
> Как вариант - пишется какая-то база ОС на каком-нибудь мощнейшем
> интерпретируемом языке в стиле FORT или Haskell, а для ее,
> соответсвенно, для каждого типа процессора свой интерпретатор.
Вах! Зачем интерпретатор?
http://moldovacc.md/acoulichev/franz.html
> Программы - не бинарники, а исключительно код на каком-то
> языке...
Slim binaries.
См. по ссылке.
А ос должна быть компонентно-ориентированой. Собственно, вообще без ядра. Только загрузчик и кодогенератор под конкретное железо.
Всё остальное -- компоненты.
← →
VEG © (2005-01-06 18:18) [9]>Чеширский_Кот © (06.01.05 18:12) [6]
Ты не понял. Сама ОС будет работать прямо из своих же исходных кодов на функциональном языке. Ну и, естественно, элементарная база, как стандарт, должна быть 100% открыта и за ее использование нельзя взимать плату. А вот то, что другие компании ничнут вешать на эту базу - может продаваться, но оно будет написано на том же функциональном языке, т.е. никакой секретности от пользователя, что там внутри.
← →
VEG © (2005-01-06 18:22) [10]>DiamondShark © (06.01.05 18:16) [8]
Я ведь и имею в виду, что компилирование кода должно производиться на лету микропрограммой БИОС, т.е. ОС и все остальные программы в себе никакого компилированного кода не имеют, на выполнение отдается прям код на языке, а в случае с Haskell компилирование на лету происходит очень быстро.
← →
Agent13 © (2005-01-06 18:25) [11]
> база ОС должна быть максимально универсальна, исполняться
> на любых процессорах, чтобы ее можно было устанавливать
> не только на компьютер, но и прошивать в различные, даже
> самые простые электроприборы
Правильно, даёшь Виндовс для калькуляторов!
← →
DiamondShark © (2005-01-06 18:25) [12]
> VEG © (06.01.05 18:22) [10]
Соль в том, что кодогенератор не для каждого языка, а для одного промежуточного представления (не языка!) программы.
← →
Anton_K © (2005-01-06 18:26) [13]> [10]
Если всё, включая саму ОС, компилировать на лету, то никакого суперкомпьютера не хватит.
← →
DiamondShark © (2005-01-06 18:28) [14]
> Anton_K © (06.01.05 18:26) [13]
> > [10]
>
> Если всё, включая саму ОС, компилировать на лету, то никакого
> суперкомпьютера не хватит.
Хватит. И даже не суперкомпьютера.
Лучше, всё-таки, прочитать.
Кроме того, такая ос уже есть.
← →
VEG © (2005-01-06 18:29) [15]>Agent13 © (06.01.05 18:25) [11]
Какая нафиг Виндовз? Звания ОС будущего ей не светит;)
Между прочим, для программистов было бы удобнее писать для всего оборудования программы в одной среде используя какой-то стандарт.
Насчет ресурсоемкости скажу, что базу ОС можно вместить в максимально маленький размер, который даже для простого калькулятора будет приемлем.
← →
Anton_K © (2005-01-06 18:31) [16]DiamondShark © (06.01.05 18:28) [14]
Кроме того, такая ос уже есть.
Как называется эта ОС не подскажите?
← →
DiamondShark © (2005-01-06 18:34) [17]Oberon System
← →
VEG © (2005-01-06 18:36) [18]Разработки такой ОС предпринимались еще в 80-х годах, но очень медленно, к сожалению. И тут пришел Билли со своей Виндовз, и все на время забыли идею, которая сделала бы компьютерный мир проще...
>DiamondShark © (06.01.05 18:25) [12]
Стой-стой-стой... Не совсем тебя понял. Haskell вполне тянет до уровня функционального языка. Более того, его можно считать чуть ли не лучшим в этом классе. Что ты называешь промежуточным представлением? Код на Haskell? Так это, в принципе, и есть язык. Не знаю, можно ли перекодировать в его коды с других языков, но это было бы как-раз кстати для принятия этого языка как стандарт хранения кода.
>Anton_K © (06.01.05 18:26) [13]
Ошибаетесь. Мощность функциональных языков может просто поражать.
← →
DiamondShark © (2005-01-06 18:47) [19]
> VEG © (06.01.05 18:36) [18]
При чём здесь функциональные языки?
Промежуточное представление -- slim binaries. Можно считать, что это некий обобщённый структурный язык. Только не с текстовым представлением. Это уложенное в поток семантическое дерево программы.
Подробнее -- в работе Франца. Обещаю, очень интересно.
← →
VEG © (2005-01-06 18:48) [20]Для тех, кто не в курсе, что собой представляет язык Haskell:
Первое упоминание функционального программирования в зарубежной литературе стоит за 1978 год, и Haskell назван так в честь основателя функционального подхода. Да и символ Лямбда больше относится к функциональным языкам в целом, нежели только к Haskell.
На сегодня Haskell - это современный, чисто функциональный язык программирования с поддержкой ленивых вычислений (lazy evaluation).
Хотя на первый взгляд поддерживаются довольно скромные возможности, вы экономите время при написании программ, вводя гораздо меньше строк кода, чем в процедурных и объектно-ориентированных языках. К тому же по Haskell имеется множество документации, написанной вузовскими профессорами и профессиональными программистами со всего мира. Haskell является стандартом де-факто среди функциональных языков.
Чтобы понять причину высокой популярности Haskell среди программистов, достаточно посмотреть на несколько строчек кода, написанного на этом языке.
Пример быстрой сортировки на Haskell :qsort [] = [] qsort (x:xs) = qsort [ u |
u<-xs, u<x ] ++ [ x ] ++ qsort [ u | u<-xs, u>=x
]
Пример быстрой сортировки на C :qsort( a, lo, hi ) int a[], hi, lo; { int h,
l, p, t; if (lo < hi) { l = lo; h = hi; p = a[hi]; do {
while ((l < h) && (a[l] <= p)) l = l+1; while
((h > l) && (a[h] >= p)) h = h-1; if (l < h)
{ t = a[l]; a[l] = a[h]; a[h] = t; } } while (l < h); t =
a[l]; a[l] = a[hi]; a[hi] = t; qsort( a, lo, l-1 ); qsort( a,
l+1, hi ); } }
Алгоритм на C будет ориентирован на работу со списками определенного типа, например, массивом чисел, в то время как приведенная выше функция на Haskell более универсальна: она отсортирует и списки чисел, и списки строк или символов. Но если кто-то подумает, что Haskell -- бестиповый язык, он очень ошибется: строгая типизация играет в Haskell важнейшую роль.
По простоте и понятности с программами на Haskell не сравнится даже Java.
После небольшого знакомства с Haskell начинает казаться что все действия на нем можно выполнить максимум в три строчки. В каком-то смысле так оно и есть, поскольку язык не отягощен опытом многих десятилетий развития, а пишется как современный язык для современных программистов легко вбирая лучшие качества конкурентов.
Haskell удобен при написании декодеров, компиляторов( их еще иногда называют конвертеры), графических движков, да и мало ли чего можно еще написать. Можно сказать что Haskell - язык математиков, и причем ленивых математиков.
http://e-skin.hut.ru/langs/haskell.php
← →
VEG © (2005-01-06 18:55) [21]>DiamondShark © (06.01.05 18:47) [19]
В таком случае программы не совсем удобно просматривать, а если саму ОС писать не на функциональных языках, то легко можно сделать ошибку.
Если писать на Haskell, то тогда понадобится еще и компилятор в промежуточное представление (где есть какие-то базовые команды, которые заменяются на поддерживаемые данным процессором или эмулируются).
ИМХО, идея с исполнением прямо из исходного кода весьма и весьма интереснее и перспективнее.
← →
DiamondShark © (2005-01-06 18:55) [22]Пример event-driven UI на Хаскеле можно увидеть?
← →
DiamondShark © (2005-01-06 19:01) [23]
> В таком случае программы не совсем удобно просматривать
Наоборот. Любая программа без труда преобразуется в текст на любом структурном языке.
> Если писать на Haskell, то тогда понадобится еще и компилятор
> в промежуточное представление
Естественно. Для любого языка понадобится.
Компиляция получается двухфазная: сначала входной язык -> slim binary, потом slim binary -> машинный код.
Промежуточная форма полностью переносима.
> ИМХО, идея с исполнением прямо из исходного кода весьма
> и весьма интереснее и перспективнее.
Чем?
← →
Кудесник © (2005-01-06 20:07) [24]Однозначно одно... ко всем словам которыми описываються современные ОС... лёгкая установка, настройка, маштабируемость, обучаемость и т.д. прибавиться приставка "само-"... исчезнет слово "драйвер"... ему на смену придёт, что-то более универсальное... если у системы не будет возмоности получить описание работы нового устройства из глобальной базы, то она сама исследует его, настроит и запустит... сказки, блин %)
← →
DiamondShark © (2005-01-06 20:28) [25]В компоненто-ориентированной ос не будет разницы между аппаратным и программным компонентом.
← →
iZEN © (2005-01-06 22:03) [26]Какая ОС в будущем?
Всё будет устроено по-другому!
Развитие парллельных многоядерных архитектур изменит мир персональных (и не только) вычислений. Вполне возможно, что каждый узел параллельного процессора будет состоять из маленького "универсального" процессора, поддерживающего многопоточное исполнение байткода в своём ядре. А что будет представлять собой этот байткод (x86asm не годится, так как слишком громоздкий), скорее - RISC-подобные инструкции. Но так как RISC-команд нужно очень-очень много для описания простейшей операции, то это вряд ли приживётся. Будет, скорее всего, оптимизированный байткод с ограниченным форматом команд по типу MSIL или Java byte-code.
Что касается железа, способного непосредственно исполнять этот код, то далеко ходить не надо: спецификация picoJava уже давно есть и кое-где применяется. Выпускаются "универсальные" процессоры для встраиваемых (embedded) систем.
http://www.ajile.com/products.htm
Спецификация:
http://www.ajile.com/downloads/aJ-100ReferenceManual.pdf
и схемы:
http://www.ajile.com/downloads/aj100evb_schematic.PDF
← →
iZEN © (2005-01-06 22:05) [27]На очереди выпуск японского Cell. Готовьтесь.
← →
Маг Похмеляйнен (2005-01-06 22:10) [28]Не забудьте про SkyOS!
http://www.skyos.org/
Особенно скриншоты впечатляют.
Вот, наверное, ОНА - ось будущего... (мечтательно)
← →
Игорь Шевченко © (2005-01-06 22:10) [29]Таненбаума читать. Долго и наизусть.
← →
GEN++ © (2005-01-06 22:14) [30]ОС будущего как минимум должна быть "кремниевой" т.е.
входить в состав процессора (процессорного модуля).
Перефирия типа винчестеров/CD и подобных только для хранения
внешних данных в стандартизованном формате.
← →
DiamondShark © (2005-01-06 22:18) [31]
> Будет, скорее всего, оптимизированный байткод с ограниченным
> форматом команд по типу MSIL или Java byte-code.
Да, инерция мышления труднопреодолима.
← →
VEG © (2005-01-06 22:49) [32]Для будущего, думаю, винчестеры для машин уже не покатят. К тому времени технологии беспроводной передачи данных обалденно повысят свои показатели, и поэтому сполне станет реально свои данные, в т.ч. и любимую ОС хранить в интернете на дата-центрах, а к компьютеру подключать лишь устройство приемник/передатчик информации. Классно будет - введя логин и пароль можно с любого компьютера попасть в свою ОС, к своим любимым файлам и т.д.
Флэш-плееры больше не будут нуждаться в карточках - играть музыку они будут прям с этого инет-винчествера.
Сделал пару фоток на цифровик в Париже - и через пару секунд по телевизору близких из Италии можно будет зырить эти картинки. А еще есть такое понятие, как «общак» - эдакое общее гига-скопление файлов, музыки и т.д.
← →
VEG © (2005-01-06 22:52) [33]Это, кстати, дает ряд преимуществ - датацентры сами будут обновлять вашу ОС до последних версий, ставить свежие антивирусные базы и т.д.
Можно устроить подписку на музыку и т.д.
← →
Игорь Шевченко © (2005-01-06 22:53) [34]VEG © (06.01.05 22:49) [32]
Это ж сколько денег можно собрать с каждого байта...
← →
VEG © (2005-01-06 23:03) [35]>Игорь Шевченко © (06.01.05 22:53) [34]
Не так уж и много. Огромные деньги выделяют на совершенствование всяких там процессоров. И впустую. почему бы не пустить их терминальной направленности компьютера?
← →
VEG © (2005-01-06 23:03) [36]>Игорь Шевченко © (06.01.05 22:53) [34]
Не так уж и много. Огромные деньги выделяют на совершенствование всяких там процессоров. И впустую. почему бы не пустить их терминальной направленности компьютера?
← →
Gero © (2005-01-06 23:27) [37]
> Это, кстати, дает ряд преимуществ - датацентры сами будут
> обновлять вашу ОС до последних версий, ставить свежие антивирусные
> базы и т.д.
Вот здорово будет, когда такой датацентр взломают…
← →
Andrewp © (2005-01-06 23:39) [38]ОС которая не содержит ниодного глюка.
← →
uny © (2005-01-06 23:44) [39]можно на сравнении:
Мчится мне наперерез
Шестисотый "Мерседес"
Мой асфальтовый каток
Понадежнее, браток
:)
← →
GEN++ © (2005-01-07 00:07) [40]>станет реально свои данные, в т.ч. и любимую ОС хранить в >интернете на дата-центрах, а к компьютеру подключать лишь >устройство приемник/передатчик информации. Классно будет - >введя логин и пароль можно с любого компьютера попасть в свою >ОС, к своим любимым файлам и т.д.
Тогда это будет всеобщий НУДИЗМ.
Сколько существует человечество - столько существует информация
с ограниченным доступом. Если предполагается хранить ее
где то в data центрах, то это равносильно коммунизму в кубе
(придется забыть об авторскиз правах и пр. и пр.)
Кстати ИНЕТ задумывался как система коллективного доступа
к общей электронной базе знаний (получитьть любую книгу -
секунды). А что на самом деле: за секунды можно узнать стоимость
услуг Нади с 52-м бюстом да где Вам впарят залежалый товар.
........
Страницы: 1 2 вся ветка
Форум: "Потрепаться";
Текущий архив: 2005.01.30;
Скачать: [xml.tar.bz2];
Память: 0.58 MB
Время: 0.035 c