Мне было просто интересно, кто знает, из чего состоят языки программирования Windows, Mac OS X и Linux и какие языки используются для каждой части ОС (то есть: ядро, архитектура подключаемых модулей, компоненты GUI и т. Д.).
Я предполагаю, что есть несколько языков для каждого, и, очевидно, я знаю, что ядро Linux написано на C.
Я полностью предполагаю, что Mac OS X содержит много кода Objective-C, поскольку это язык Apple, полученный из NeXT.
Я слышал, что Windows содержит C, C ++ и Intel Assembly. Linux или Mac OS содержат какой-либо ассемблерный код?
Кроме того, существуют ли языки сценариев, такие как Ruby, Python и т. Д., Используемые разработчиками ОС для сценариев частей ОС? Какие части ОС будут написаны на каждом языке?
windows
linux
macos
programming-languages
operating-system
Брок Вульф
источник
источник
Ответы:
Все ядра также будут использовать некоторый ассемблерный код.
источник
Linux: C. Некоторые детали в сборке.
Mac OS X: какао в основном в Objective-C. Ядро написано на C, некоторые части в сборке.
Windows: C, C ++, C #. Некоторые детали на ассемблере.
Unix: C. Некоторые детали в сборке. (Источник)
источник
Mac OS X использует большое количество C ++ в некоторых библиотеках, но это не раскрывается, так как они боятся взлома ABI.
источник
IOKit
,WebKit
иGLKit
. Также взглянуть наdyld
. Это очень тяжелый C ++.Я понимаю, что это старый пост, но Windows определенно не написана на C ++. В нем много C ++, но то, что мы технически определяем как операционную систему, отсутствует в C ++. Windows API, ядро Windows (оба они, по сути, являются операционной системой) написаны на языке C. Несколько лет назад мне дали утечку кода для Windows 2000 и Windows XP. Код был недостаточно полным, чтобы скомпилировать ядро или API, но мы смогли скомпилировать отдельные программы и сервисы. Например, мы смогли успешно скомпилировать Notepad.exe, mspaint.exe и службу spoolsv.exe (диспетчер очереди печати). Все написанное на C. Я не посмотрел снова, но я уверен, что утечка кода все еще сохраняется в виде торрент-файлов, которые все еще могут быть доступны.
источник
Windows: в основном C и C ++, некоторые C #
источник
источник
Вот это да!!! 9 лет вопроса, но я только что натолкнулся на серию внутренних статей по истории командной строки Windows, и я думаю, что какая-то ее часть может иметь отношение к проблеме Windows:
источник
Вы правы. MacOSX имеет Objective-C в ядре.
Windows C ++
Linux C
Насчет скриптовых языков, нет, они довольно высокого уровня.
источник
Я читал или слышал, что Mac OS X написана в основном на Objective-C с некоторыми компонентами нижнего уровня, такими как ядро и драйверы аппаратных устройств, написанными на C. Я считаю, что Apple "ест" свою собачью еду "Это означает, что они пишут Mac OS X, используя свои собственные инструменты разработчика Xcode . GCC (GNU Compiler Collection) компилятор-линкер инструмент командной строки Unix , которая Xcode используется для большинства его составления и / или ссылки на исполняемые файлы. Среди других возможных языков я знаю, что GCC компилирует исходный код из языков C, Objective-C, C ++ и Objective-C ++.
источник
Ядро Linux в основном написано на C (и немного на ассемблере, я бы подумал), но некоторые из важных утилит (программ) пользовательского пространства - это сценарии оболочки, написанные на языке сценариев Bash. Кроме того, довольно сложно определить «Linux», поскольку вы в основном строите систему Linux, выбирая нужные кусочки и собирая их вместе, и в зависимости от того, что хочет отдельный пользователь Linux, вы можете использовать практически любой язык. (Как сказал Пол, Python и C ++ играют важную роль)
источник
В дополнение к ядру Mac OS X, Finder не был написан на Objective-C до Snow Leopard. В Snow Leopard было написано в Какао, Objective-C
источник
Смотрите под заголовком Одна операционная система, работающая на нескольких платформах, где указано:
источник
Windows явно не написана на C # (!)
Просто посмотрите исходный код Windows, и вы увидите ...
источник