Помощь - Поиск - Пользователи - Календарь
Полная версия: ОС
Форум «Всё о Паскале» > Другое > Свободное общение
Гость
А на каких языках пишут ОС?
Altair
Различные компоненты на разных.
Цитата
Операцио́нная систе́ма — основной вид системного ПО, комплекс программ, обеспечивающий управление аппаратными средствами компьютера, работу с файлами, ввод и вывод данных, а также выполнение прикладных программ и утилит.

Assembler, C, C++
Т.е. в основном низкоуровневые языки.
Archon
lol.gif lol.gif lol.gif На всяких.

Нет ну если серьёзно smile.gif)), знание ассемблера - обязательно, а так... язык особо не важен, главное - хорошее знание принципов работы компа.
Lapp
Как известно, язык Си был создан в процессе создания Unix и специально для этой цели smile.gif
Вот коротенькая заметка одного моего приятеля..
Кстати, там упоминается кроссплатформенная компиляция, которая сильно выручает, когда для нового процессора программные средства еще не созданы.
xds
Цитата(Altair @ 1.12.2006 5:51) *

Assembler, C, C++
Т.е. в основном низкоуровневые языки.
На перечисленных в основном и пишутся. Только, что такое низкоуровневые языки (или в основном низкоуровневые)? wink.gif

Offtopic:
Цитата
Вот коротенькая заметка одного моего приятеля..

Цитата
Но в PDP 11 команды представлялись байтами...

В PDP-11 команды представляются словами по два байта. Литералы и адреса также хранятся в виде слов.
Altair
Цитата
Только, что такое низкоуровневые языки (или в основном низкоуровневые)?

Позволяющие получить низкоуровневый доступ к оборудованию.
Гость
Цитата(Altair @ 1.12.2006 10:00) *

Позволяющие получить низкоуровневый доступ к оборудованию.

Уровень языка определяется не этим, а степенью абстрагирования от физической системы представления данных и команд. xds абсолютно прав, нельзя ставить Си и Ассемблер на один уровень, и тут тебе не вывернуться, Sir Altair.. smile.gif Ассемблер - существенно машинозависимый язык, что и определяет его уровень, как более низкий, чем Си. А уровень доступа к оборудованию - понятие другое.

PS
За слова приятелей не отвечаю smile.gif. Хотя да, невнимательно я читал..

Фу-ты ну-ты, опять забыл залогиниться..
xds
Цитата
Позволяющие получить низкоуровневый доступ к оборудованию.

Тогда подходит и Бейсик - в некоторых реализациях...
Altair
Цитата
Уровень языка определяется не этим, а степенью абстрагирования от физической системы представления данных и команд

И этим тоже!
Определение из ВикиПедии:
Цитата
Высокоуровневый язык программирования — язык программирования, разработанный для быстроты и удобства использования программистом. Слово «высокоуровневый» здесь означает, что язык предназначен для решения абстрактных высокоуровневых задач и оперирует не инструкциями к оборудованию, а логическими понятиями и абстракцией данных.


Если язык высокоуровневый, то он НЕ оперирует инструкциями к оборудованию.
Язык низкоуровневый.
Низкоуровневый язык оперирует инструкциями к оборудованию.

Цитата
нельзя ставить Си и Ассемблер на один уровень

Очень даже можно! Си изначально строился на основе ассемблера и во многом походит на него!
xds
Всё, я молчу - грядёт флейм...
Altair
Холиварс
hiv
Иногда пишут на языке FORT.
К стати он к ассемблеру ближе чем С и до сих пор жив.
А С++ я бы не стал относить к низкоуровневым, чего стоит одна стандартная библиотека с шаблонами и перегрузкой операторов и т.д.
Операционки счас в основном пишут на С++ + Ассемблер. К стати UNIX подход считаю правильным - в начале пишется компилятор под проц (либо дописывается поддержка проца к компилятору на той ОС которая есть) а потом на нем создается ОС (либо компилируется та что есть smile.gif )
Lapp
Цитата(Altair @ 1.12.2006 13:12) *

Холиварс

Альтаир, при всем моем уважении - откуда в тебе столько воинственности?.. blink.gif Ну, не работает мордобой в интеллектуальной области, пойми - он всегда обречен на поражение..
Статья в Википедии, на которую ты ссылаешься, выглядит довольно дилетантской (Википедия была и будет не истиной в последней инстанции, а источником информации для размышления..). В английской версии статья High-Level Programming Language выглядит несколько убедительнее. Вот отрывок из нее, который, во-первых, убедил меня, что я был отчасти не прав, а во-вторых, надеюсь, способен примирить все враждующие стороны и закрыть спор smile.gif.
Цитата
Note that the terms "high-level" and "low-level" are inherently relative. Originally, assembly language was considered low-level and COBOL, C, etc. were considered high-level, as they allowed the abstractions of functions, variables and expression evaluation, and also that they had to be compiled to assembly before being compiled into machine code. Many programmers today might refer to C as low-level, as it still allows memory to be accessed by address, and provides direct access to the assembly level

Замечу, на всякий случай, что и с этим можно поспорить, но все же рациональное зерно тут есть. Предлагаю назвать Си "универсальным языком".. smile.gif
Altair
Цитата
Ну, не работает мордобой в интеллектуальной области

гыыы... это кто тебе сказал?
В интеллектуальной области - интеллектуальной мордобой! good.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.