Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Самодельные ОСи: зачем это нужно?

256
14 ноября 2006 года
foxweb
1.0K / / 27.07.2005
Многие сейчас занимаются разработкой собственный операционных систем как в одиночку так и командами. Большинство из них пишутся либо на ASM (BIOS/DOS-совместимые) или на C/C++ (Linux-совместимые).

Подозреваю, что скоро ОСи на ASM скоро отомрут (да они уже отстают лет на 15), поскольку архитектура современных ПК меняется так, что просто жуть, а для реализации боее-менее полноценной DOS-совместимой ОС знания одного ASМ и таблицы прерываний недостаточно.

Кто что думает по этому поводу?
3
14 ноября 2006 года
Green
4.8K / / 20.01.2000
Что значит "BIOS/DOS-совместимые" ?
Что значит "Linux-совместимые" ?

ОС пишутся не только под ПК, а ниша для ПК уже заполнена.
Архитектура ПК не меняется. Меняется реализация, архитектура развивается, но она не меняется.

Цитата:

Операцио́нная систе́ма, ОС (англ. operating system) — базовый комплекс компьютерных программ, обеспечивающий управление аппаратными средствами компьютера, работу с файлами, ввод и вывод данных, а также выполнение прикладных программ и утилит.


Из определения следует, что базовый уровень ОС должен быть написан на языке транслируемом в код "родной" для железа. Для современных ПК таковыми являются языки нижнего и среднего уровня. Для некоторых других устройств таковыми являются языки более высокого уровня, например Java для устройств с hw java-машиной.

Отсюда следует, что наиболее применимыми языками для написания ОС для ПК остаются asm и c/c++.
Написание ОС для ПК, например, на C# на данный момент невозможно, т.к. нет аппаратной поддержки байт-кода (MSIL).

241
14 ноября 2006 года
Sanila_san
1.6K / / 07.06.2005
[QUOTE=foxweb]Многие сейчас занимаются разработкой собственный операционных систем как в одиночку так и командами....
...
Кто что думает по этому поводу?[/QUOTE]Один из модераторов сказал когда-то, что оси лучше писать не для всего, а специальные, вроде Cisco IOS. Вот мне как раз и странно, что на этом форуме никто не задаётся подобными задачами. Да и Бог бы с ними, с маршрутизаторами. Вообще не видно здесь интересных идей, а только что-то вроде попыток подражания Гейтсу и Торвальдсу. оно, конечно, здорово, но незачем. Не лучше ли писать какой-то узко-специальный продукт, зато лучший в своей узкой специальности?
10
14 ноября 2006 года
Freeman
3.2K / / 06.03.2004
[QUOTE=foxweb]Кто что думает по этому поводу?[/QUOTE]
Чем бы дитя не тешилось.
241
14 ноября 2006 года
Sanila_san
1.6K / / 07.06.2005
Интересно, что большинство пишущих оси не говорят, для чего они это делают. Товарищу в колледже сказали: "Кто напишет DOS, получит оценку без экзамена". Смелых не нашлось, и все сели учить ассемблер. То же самое и здесь. Давайте напишем ОС? Прекрасно, давайте напишем. Но прежде чем тратить драгоценное время (за которое можно подружиться с десятком девушек, написать симфонию, заработать тысячу "денег", послушать соловья, наконец...), давайте же определим, для чего мы это будем делать? Хотя бы для того, чтобы сдать экзамен по асму.
10
14 ноября 2006 года
Freeman
3.2K / / 06.03.2004
По вам можно психологию изучать: "Подсознательные мотивы и сублимация желаний продвинутого пользователя/программиста".

Парадокс в том, что всеми движут одни и те же мотивы. И самое забавное, что идея, ради чего сыр-бор, по сути своей верна. Все мы недовольны существующими ОС. "Компьютер успешно решает проблемы, не существовавшие до появления компьютера" (c) не помню. Я лично с теплотой вспоминаю о временах DOS, когда систему было легко контролировать и тиражировать.

Для появления прогрессивной ОС нужны прогрессивные технологии, ныне не наблюдаемые. Поэтому, чем бы дитя не тешилось.
325
14 ноября 2006 года
Franky
723 / / 10.08.2005
Самодельные ОСи пишутся или от избытка времени, или для удовлетворения самолюбия. Я это в хорошем смысле, ибо себя любить надо ;)
241
14 ноября 2006 года
Sanila_san
1.6K / / 07.06.2005
[QUOTE=Freeman]По вам можно психологию изучать: "Подсознательные мотивы и сублимация желаний продвинутого пользователя/программиста".[/QUOTE] По мне? Польщён премного. :)
10
14 ноября 2006 года
Freeman
3.2K / / 06.03.2004
[QUOTE=Franky]Самодельные ОСи пишутся или от избытка времени, или для удовлетворения самолюбия. Я это в хорошем смысле, ибо себя любить надо ;)[/QUOTE]
Надо. Хочется - пиши по-тихому. Не стоит доводить до самоудовлетворения.

[QUOTE=Sanila_san]По мне? Польщён премного. :)[/QUOTE]
Имел в виду всех горе-осеписателей.
241
15 ноября 2006 года
Sanila_san
1.6K / / 07.06.2005
[QUOTE=Freeman]Не стоит доводить до самоудовлетворения.[/QUOTE]Отчего же? Как раз до него и стоит доводить, другое дело, насколько быстро оно наступит и какие от него последствия.
Аноним
[QUOTE=Sanila_san] Но прежде чем тратить драгоценное время (за которое можно подружиться с десятком девушек, написать симфонию, заработать тысячу "денег", послушать соловья, наконец...), давайте же определим, для чего мы это будем делать?[/QUOTE]
Точно! Sanila_san, полностью согласен! А ещё поют: Я променял девичий смех на голос лектора занудный на этот ... физтех, на ... город Долгопрудный. И вот я думаю иногда, а не променялся ли я?
241
15 ноября 2006 года
Sanila_san
1.6K / / 07.06.2005
[QUOTE=pervoPROkodetz]Точно! Sanila_san, полностью согласен! А ещё поют: Я променял девичий смех на голос лектора занудный на этот ... физтех, на ... город Долгопрудный. И вот я думаю иногда, а не променялся ли я?[/QUOTE]Так вы из МФТИ? Это ж моя несбывшаяся мечта (и слава Аллаху;)). Торвальдсу это, видимо, нисколько не мешало. А вообще - каждый сам решает, что ему больше нравится. Иногда полезнее тратить время на young ladies, иногда - на комп. Но это уже другая история.
Аноним
[QUOTE=Sanila_san]Так вы из МФТИ? Это ж моя несбывшаяся мечта (и слава Аллаху;)). Торвальдсу это, видимо, нисколько не мешало. А вообще - каждый сам решает, что ему больше нравится. Иногда полезнее тратить время на young ladies, иногда - на комп. Но это уже другая история.[/QUOTE]
из мгу. на физтех меня тоже не взяли:( хотя тоже мечтал и даже трижды сдавать ездил. (Коршунов - казёл.) вобщем, жму руку, коллега.
273
15 ноября 2006 года
3A3-968M
1.2K / / 22.12.2005
Я считаю, что время ASM как языка для разработки ОС, драйверов и иного "сложного" софта должно подойти к концу. На пятки наступают .NET и Java, которые являются аппаратно-независимыми. Вот на них и стоит писать ОС и иное ПО. Единственное, что всё таки придётся писать на ASM, это виртуальные машины для вышеперечисленных сред. Но это проще, чем переписывать ОС для каждой аппаратной платформы (пусть не всю, но загрузчик, ядро точно). Да и прошло время, когда мир ПК испытывал потребности в удобной и прочной ОС. На данный момент нужно вкладывать подобный энтузиазм в следующие области программирования: декомпиляторы, искуственный интеллект, языки программирования. А писать ОС в одному может и реально, но раскрутить её нереально. Эта задача сопоставима с попыткой пересадить весь мир на автомобили с электродвигателями, может бы все и пересели, только вот вряд ли нефтяные магнаты разрешат...
3
15 ноября 2006 года
Green
4.8K / / 20.01.2000
[QUOTE=3A3-968M]На пятки наступают .NET и Java, которые являются аппаратно-независимыми. Вот на них и стоит писать ОС и иное ПО.
[/QUOTE]
Видимо, ты не понимаешь, что такое ОС.
Специально для тебя повторяю цитату:
Цитата:

Операцио́нная систе́ма, ОС (англ. operating system) — базовый комплекс компьютерных программ, обеспечивающий управление аппаратными средствами компьютера, работу с файлами, ввод и вывод данных, а также выполнение прикладных программ и утилит.


Как комплекс обеспечивающий управление аппаратными средствами может быть аппаратно-независимым? :)

[QUOTE=3A3-968M]
Единственное, что всё таки придётся писать на ASM, это виртуальные машины для вышеперечисленных сред.
[/QUOTE]
Это и будет ОС. :)

273
15 ноября 2006 года
3A3-968M
1.2K / / 22.12.2005
[quote=Green]Видимо, ты не понимаешь, что такое ОС.
Специально для тебя повторяю цитату:

Как комплекс обеспечивающий управление аппаратными средствами может быть аппаратно-независимым? :)


Это и будет ОС. :)[/quote]
Узко мыслишь. Помимо написаных кем-то определений нужно и самому мысль развивать. На Java есть ОС между прочим(видать только у меня во сне:)
3
15 ноября 2006 года
Green
4.8K / / 20.01.2000
Вот ты, видимо, и развил, что вышел за рамки определения ОС, включив туда и оболочку и т.п., а потом сузил рамки, но уже с другого конца, выкинув основополагающие компоненты ОС ("это виртуальные машины для вышеперечисленных сред").

Я не отрицаю, что некоторая высокоуровневая функциональность может быть написана на ЯВУ, но это значит, что ОС будет иметь смешанный характер, а основа её (HAL) будет все так же аппаратнозависимой.

Какое отношение имеет "написанное кем-то определение" к развитию собственных мыслей? Если в процессе развития своих мыслей ты подменяешь/изменяешь определение, лежащее в основе размышления, то загоняешь сам себя в тупик.
Чтож, есть возможность исправиться: приведи своё определение ОС. Каким целям служит ОС, если не предоставление боле высокоуровнего интерфейса к аппаратным средствам?

Про ОС на Java я уже писал, жаль, что опять приходиться повторяться:
[QUOTE=Green]
Из определения следует, что базовый уровень ОС должен быть написан на языке транслируемом в код "родной" для железа. Для современных ПК таковыми являются языки нижнего и среднего уровня. Для некоторых других устройств таковыми являются языки более высокого уровня, например Java для устройств с hw java-машиной.
[/QUOTE]
10
15 ноября 2006 года
Freeman
3.2K / / 06.03.2004
[QUOTE=Green]Какое отношение имеет "написанное кем-то определение" к развитию собственных мыслей?[/QUOTE]
Тут, Green, ты, к сожалению, неправ. Я уже не первый год занимаюсь проблематикой разработки систем в управляемом коде. Когда-то и мой проект увидит свет.

На Java или .NET, естественно, ОС не напишешь - при их проектировании сделано достаточно концептуальных промахов, чтобы сделать это невозможным. Однако, разработка переносимой ОС в управляемом коде ведется уже не первый год, и не только мной. Про Singularity от Microsoft слышал? Фишка в том, в этом проекте нельзя отступать от духа и буквы научного подхода, идти на компромиссы - система получается медленной, сложной в эксплуатации и поддержке.

Спорить дальше не буду, скажу только, что тот, кому первому удастся найти разумный компромисс между наукой и реализацией, сделает переворот в ИТ, по уровню аналогичный переходу от распределения цилиндров и секторов к файлам. Давно пора, мы уже серьезно отстаём.
3
16 ноября 2006 года
Green
4.8K / / 20.01.2000
Честно говоря, не понял в чем, как ты считаешь, я не прав (хотя, я допускаю, что не могу быть прав во всем :) ).
Судя по приведенной цитате, в том, что при обсуждении чего либо надо определиться с терминологией и не отходить от неё в процессе обсуждения, как бы не развивали собственные мысли. Если мы говорим об ОС, то это ОС, а не ОС + shell.
Разве это не так?

Или же я не прав в том, что ОС на своем нижнем уровне напрямую работает с оборудованием, что является её основной целью (исходя из определения), и по-этому должна быть написана на этом уровне на языке транслируемом в код понятный этому оборудованию?
273
16 ноября 2006 года
3A3-968M
1.2K / / 22.12.2005
А где ты видишь в моём посте упоминание о shell???? Терминология - это хорошо, но надо хоть иногда отходить от стереотипов. Когда я читаю какое-либо определение термина, я ещё думаю мозгами, прежде чем принять его как есть. И со временем, некоторые термины имеют свойства менять свои определения.
Лично я спорить больше по этому моменту не хочу и не буду, нет в этом практического (научного) момента.
10
16 ноября 2006 года
Freeman
3.2K / / 06.03.2004
[QUOTE=Green]Или же я не прав в том, что ОС на своем нижнем уровне напрямую работает с оборудованием[/QUOTE]
Работает.

[QUOTE=Green]что является её основной целью (исходя из определения)[/QUOTE]
Нет. Переосмысление целей ОС - превращение оборудования из цели в средство. Суть современной ОС не в работе с оборудованием, а в создании благоприятной среды для решения задач - под этим может подразумеваться и пользователь, и программы, явные и неявные. Пример современной ОС - встраиваемая система.

[QUOTE=Green]должна быть написана на этом уровне на языке транслируемом в код понятный этому оборудованию?[/QUOTE]
Язык не определяет код. Сегодня просто так сложилось, потому что в ИТ еще много догм.
3
16 ноября 2006 года
Green
4.8K / / 20.01.2000
[QUOTE=3A3-968M]Терминология - это хорошо, но надо хоть иногда отходить от стереотипов.[/QUOTE]
Терминология и стереотипы - разные вещи.
Вот мы тут спорим, спорим...
И я чувствую, что спорим то о разных вещах, предложил определиться в терминах, чтоб ПОНИМАТЬ О ЧЕМ СПОР, а не путать теплое с мягким. Так вы наехали, что я не думаю своей головой, привожу устаревшие определения, и продолжаете спорить по сути НЕ О ЧЕМ, т.к. моё определение вы отвергли, а своего не предложили.

Давайте продолжим спор: я буду утверждать, что ОС бывают положительные и отрицательные, и что положительные ОС приводят к разносу системы, а отрицательные - к апериодическим процессам, что ОС вообще не имеет никакого отношения к программированию и компьютерам. И попробуйте меня в этом переубедить не расставляя рамок, не определяя терминов, "отойдя от стереотипа".
Эффект будет абсолютно тем же, что и сейчас: каждый будет втолковывать свои мысли исходя из своего понимания термина, вместо того чтобы определиться для начала О ЧЕМ СОБСТВЕННО РЕЧЬ.
252
20 ноября 2006 года
koderAlex
1.4K / / 07.09.2005
[QUOTE=Sanila_san]Интересно, что большинство пишущих оси не говорят, для чего они это делают. Товарищу в колледже сказали: "Кто напишет DOS, получит оценку без экзамена". Смелых не нашлось, и все сели учить ассемблер. То же самое и здесь. Давайте напишем ОС? Прекрасно, давайте напишем. Но прежде чем тратить драгоценное время (за которое можно подружиться с десятком девушек, написать симфонию, заработать тысячу "денег", послушать соловья, наконец...), давайте же определим, для чего мы это будем делать? Хотя бы для того, чтобы сдать экзамен по асму.[/QUOTE]
сообразительных тоже не нашлось ? )) надо было пойти к доске и мелом накалякать "DOS" ))
252
20 ноября 2006 года
koderAlex
1.4K / / 07.09.2005
[QUOTE=Green]Терминология и стереотипы - разные вещи.
Вот мы тут спорим, спорим...
И я чувствую, что спорим то о разных вещах, предложил определиться в терминах, чтоб ПОНИМАТЬ О ЧЕМ СПОР, а не путать теплое с мягким. Так вы наехали, что я не думаю своей головой, привожу устаревшие определения, и продолжаете спорить по сути НЕ О ЧЕМ, т.к. моё определение вы отвергли, а своего не предложили.

Давайте продолжим спор: я буду утверждать, что ОС бывают положительные и отрицательные, и что положительные ОС приводят к разносу системы, а отрицательные - к апериодическим процессам, что ОС вообще не имеет никакого отношения к программированию и компьютерам. И попробуйте меня в этом переубедить не расставляя рамок, не определяя терминов, "отойдя от стереотипа".
Эффект будет абсолютно тем же, что и сейчас: каждый будет втолковывать свои мысли исходя из своего понимания термина, вместо того чтобы определиться для начала О ЧЕМ СОБСТВЕННО РЕЧЬ.[/QUOTE]
Давайте сделаем более современное определение .
Например : ос - програмный продукт обеспечивающий наиболее эффективное использование ресурсов ПК прикладными прогами наиболее удобным способом .
Ну как ?)
256
26 ноября 2006 года
foxweb
1.0K / / 27.07.2005
2 koderAlex: неплохо! уже неплохо! а что если ОС - прошивка какого-нибудь сложно агрегата? "академическое" толкование здесь более уместно.

Википедия:

Операцио́нная систе́ма, ОС (англ. operating system) — базовый комплекс компьютерных программ, обеспечивающий управление аппаратными средствами компьютера, работу с файлами, ввод и вывод данных, а также выполнение прикладных программ и утилит.
252
28 ноября 2006 года
koderAlex
1.4K / / 07.09.2005
всей-то разницы что к стандартным ресурсам добавляются нестандартные . кстати , "работа с файлами"и "ввод и вывод данных" - это вариант специального использования нестандартных ресурсов .
как пример - таже прошивка во встроенном компе . может не быть как харда , так и клавы с монитором .
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог