RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Ответить на сообщение
Имя:
e-mail:
FIDO:
Home page:
сохранить данные о вас
Тема:
> > > 1. Уже названный интерпретатор (эмулятор). > > > > Пока из всего вышесказанного мне кажется этот способ наиболее универсальным. > > Бесспорно. > > > > 2. Загрузчик LX-файлов может иметь встроенный декомпилятор и в процессе загрузки переводить 16-разрядные объекты в соответствующий 32-разрядный код. > > > > В общем случае, 16-и разрядный сегмент есть не только в загрузчике. > > Не понял про загрузчик. 16-битные фрагменты (объекты) есть практически в каждом LX-файле. > > > Хорошо, а если я в программе пишу ассемблерную вставку на 16-и битном ассемблере? > > Можно, конечно. Только никто в здравом уме для своей 32-разрядной программы писать на ассемблере 16-разрядный кусок не станет. Потому как вызов его из 32-разрядного кода - процедура нетривиальная. > > > Да и все компиляторы, хоть их и не много не охватишь. Кто то да останется незамеченным. > > Думаю, как раз наоборот. Даже десяток разных мы вряд ли наберём. А на случай обнаружения чего-то неизвестного - система отказывается запускать такую программу с выдачей соответствующей диагностики, после чего файл может быть послан разработчикая ядра для изучения и обновления загрузчика. > > Причём эти два подхода можно скомбинировать: кусок известного типа - применяем второй вариант, неизвестного - первый (интерпретируем). > > > Не очень хочется выбрасывать на помойку истории большое количество, как правило, хорошо отлаженных 16-и разрядных программ. > > Кстати, отдельная тема дл яразмышления: а действительно ли их - "большое количество"? Попробуй посчитать, сколько процентов из тех программ, которыми ты пользуешься, 16-битные, и действительно ли у них нет 32-битной замены.
_, _, _, _, _ _ _,_
(_ | / \ |\ | | |_/
, ) | , \ / | \| | | \
~ ~~~ ~ ~ ~ ~ ~ ~
Programmed by
Dmitri Maximovich
,
Dmitry I. Platonoff
,
Eugen Kuleshov
.
25.09.99 (c) 1999,
RU/2
. All rights reserved.
Rewritten by
Dmitry Ban
. All rights ignored.