OSDev
http://osdev.su/

Трансляторы, компиляторы
http://osdev.su/viewtopic.php?f=26&t=632
Страница 1 из 2

Автор:  Станислав [ 20 сен 2012, 09:44 ]
Заголовок сообщения:  Трансляторы, компиляторы

Я пишу ОС на FASM, это самый лучший транслятор из имеющихся, это лучший пример партирования в системы. Его код открыт и там можно посмотреть как из стандартного бинарного образа доделывается любой формат(com, elf, coff, pm, mz, exe, ...), это очень наглядно.
На трансляторе с лёгкостью пишутся приложения под винду и линукс с вызовом любых библиотек и функций, это потрясающе. Достоинства можно перечислять долго, но не буду.
Возникают мысли сделать формат партируемого кода для всех систем с простым требованием для АПИ.

Автор:  Yoda [ 20 сен 2012, 10:10 ]
Заголовок сообщения:  Re: Трансляторы, компиляторы

Станислав писал(а):
Я пишу ОС на FASM, это самый лучший транслятор из имеющихся, это лучший пример партирования в системы.

Это очень субъективно. Я, например, считаю, что лучший ассемблер это NASM. И плане пОртирования в первую очередь.

Автор:  D-S [ 20 сен 2012, 10:16 ]
Заголовок сообщения:  Re: Трансляторы, компиляторы

Расскажите пожалуйста, куда портировать написанную на ассемблере систему?

Автор:  phantom-84 [ 20 сен 2012, 10:28 ]
Заголовок сообщения:  Re: Трансляторы, компиляторы

Речь естественно не об этом, хотя фраза "Возникают мысли сделать формат партируемого кода для всех систем с простым требованием для АПИ" для меня не вполне понятная.

Автор:  Станислав [ 20 сен 2012, 12:27 ]
Заголовок сообщения:  Re: Трансляторы, компиляторы

D-S писал(а):
Расскажите пожалуйста, куда портировать написанную на ассемблере систему?


Портировать нужно не систему, а приложение в систему. У каждой ОС есть свой формат запускаемого файла и своё АПИ, но помимо этого можно сделать ещё один формат, общий, который поддерживает стандартные функции АПИ, которые описать и считать дополнением к любой ОС для запуска программ на всех ОС.
Системы в принципе все поддерживают стандарт вызовов invoke или сinvoke и создают для проги виртуальное пространство.

Правда моя система не поддерживает, у неё нету параметров для функций, а они все должны принадлежать к какому нить объекту и его адрес в ebp, а пораметры передаю через регистры.
Что кстати говоря и осложняет портирование.


Фасм это действительно потрясающий, самый самодостаточный и ненавязчивый, универсальный транслятор, да к тому же бесплатный, с самой большой командной базой, имеющий версию и для АРМов... .

Автор:  SII [ 20 сен 2012, 12:41 ]
Заголовок сообщения:  Re: Трансляторы, компиляторы

Формат исполняемых файлов и АПИ системы не связаны. Т.е. вообще не связаны. Ну вообще никак.

Автор:  Станислав [ 20 сен 2012, 13:02 ]
Заголовок сообщения:  Re: Трансляторы, компиляторы

SII писал(а):
Формат исполняемых файлов и АПИ системы не связаны. Т.е. вообще не связаны. Ну вообще никак.

Ну да, формат файла может быть любым, это не важно, для того и нужны кодеки, а бинарник кода в любом случае будет один и тот же.
А вот с АПИ проблемы конкретные, может быть разрешимые только пере компиляцией.

Автор:  Yoda [ 20 сен 2012, 14:45 ]
Заголовок сообщения:  Re: Трансляторы, компиляторы

Кодеки нужны не для разбора формата исполняемого файла. Кодеки (ко-дер дек-одер) нужны для работы с мультимедией – сжатие/распаковка звука и изображения.

Автор:  Станислав [ 20 сен 2012, 15:56 ]
Заголовок сообщения:  Re: Трансляторы, компиляторы

я имел в виду функцию знающую формат файла с данными, не важно какими и не обязательно сжатыми.

Автор:  pavia [ 20 сен 2012, 19:10 ]
Заголовок сообщения:  Re: Трансляторы, компиляторы

Станислав закончил изобретать ООП . Начал изобретать POSIX в части бинарного формата.

Страница 1 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/