Другие языки программирования и технологии

Чем отличаются ОС в запуске программ? Например Windows, Linux и др. Конкретней вопрос внутри.

Например знаю для винды проги на языках C+, паскаль... а ели новый язык программирования появится, Windows уже не сможет запустить? Или надо будет просто такую оболочку для ос установить, что новые проги на других языках запускала винда? Какие вообще есть еще языки программирования? Ну вот например жава то она же не сразу запускается, а через оболочу ОС... А на Linux там какие, и чем отличается запуск на винде и линюкс? И что говорят линюкс с "открытым ядром" это как, у виндовс что нельзя запускать все проги как у линюкс что ли?
Для Windows нет прог на языках C++ и Pascal. Она не понимает этих языков. Она понимает exe-файлы, в которых содержится машинный код. Есть программы-трансляторы, которые переводят с этих языков в машинный код для Windows. Для этих же языков есть трансляторы, которые переводят ту же программу с C++ или Pascal в файлы с машинным кодом для других систем - Linux, Mac OS... Такие программы есть и для десятков других языков.
Однако программа, переведенная для Windows, прямо на Linux не пойдет, и наоборот. Хотя существуют промежуточные программы, имитирующие Windows на Linux и наоборот, так что с их помощью можно запускать программы для другой системы, но далеко не все и выполняться они будут намного медленнее.
Хотя есть несколько языков, для которых в Windows уже встроены программы, которые на ходу переводят текст в машинные коды и выполняют его - VBScript, JScript...
То, что у Linux "открытое ядро", не имеет к выполнению программ никакого отношения. Это означает только, что исходные коды ядра Linux открыты для всех желающих, а у Windows исходные коды ее ядра - секрет Microsoft.
P.S. Да, Windows можно дополнять пониманием других языков. Но нормально программы заранее переводят с таких языков в язык, понимаемый Windows - язык машинных кодов. Такие программы работают намного быстрее.
ЕЛ
Евгений Латухин
99 226
Лучший ответ
Вот среда программирования для Windows, Linux и MacOS X http://rutracker.org/forum/viewtopic.php?t=3232116
А может быть и так -
Прога для х86 Линукс не пойдёт на Линуксе PowerPC разумеется, поскольку хоть и ОСи одинаковые - архитектура процов разная.
языков программирования довольно много и чтобы они запускались на той или иной ОС нужно компилировать под ту ОС
если появиться новый язык программирования, то при компиляции всё равно программа будет преображена в двоичный код и благополучно запуститься
некоторое языки программирования: delphi, c#, c, action script. php и т. д.
у каждой операционной системы своё ядро (кроме mac os x), и автору решать открытое оно или нет
открытое обозначает что любой человек может посмотреть исходный код и сделать с ним что-то для себя
запускать программы можно, но они там не виндовские, есть конечно те кто пишут ПО под разные оси
с открытым ядром энто значит, что код ядра открыт, можеш сам круто его переписать и будит не работать ос )
Там не в языках дело, а в структуре файлов, виндовые не пойдут на линукс, линуксовые не пойдут на винду, даже если они на одном языке написаны.
А открытость ядра линукс заключается в том, что его исходный код доступен всем и каждый может изменять его как пожелает.
язык это просто связующий между тобой и компилятором, а вот компилятор кокрастаки и переводит твою прогу на язык понятный машине, если тебе не предеться писать сам компилятор то тогда нестрашно, напишут компилятор и будешь пользоваться
Если тебе интересно детально разобраться, то есть книга "Операционные системы" автор Столлингс.
Если вкратце - любая программа, написанная на языке программирования, перед запуском компилируется (переводится в машинные коды) . Если появится новый язык программирования, то для него соответственно появится и компилятор, иначе нет смысла. Винда и Линукс - тоже программы) ) То, что у линукса открытое ядро - это значит, что ты при наличии прямых рук можешь изменить какой-нибудь функционал самой операционки, например работу с вводом/выводом, файлами, процессами ))
RB
Red Bull
268