По поводу версий Windows
3501
16
Скажите пожалуйста,
какие версии Windows относятся к 32-битным, а какие к 16-битным?
Заранее благодарен.
какие версии Windows относятся к 32-битным, а какие к 16-битным?
Заранее благодарен.
да ну... сдается мне, что вы не в теме...
DOS/Win 3.x — 16
Win 95/98/ME — 16/32
Win NT/2000/XP — 32
DOS/Win 3.x — 16
Win 95/98/ME — 16/32
Win NT/2000/XP — 32
Lost__Shadow
activist
Windows NT/2000/XP/2003/LH также имеет поддержку 16-битных приложений, если я не ошибаюсь.
mdv
форумный НЕтелепат
ну и что, что имеют? Ядро то 32bit.
Сейчас читают
Хорошая портниха
562958
1000
Сирия. Начало. (часть 3)
221995
995
Последняя прочитанная книга...
191935
997
А если поставить вопрос шире.
В чем принципиально отличие 16-битных приложений от 32-битных.
А то тут пишут, "ядро то 32 разрядное", ну вот что это значит?
В чем принципиально отличие 16-битных приложений от 32-битных.
А то тут пишут, "ядро то 32 разрядное", ну вот что это значит?
Принципиальное отличие - в адресации.
В 32-разрядных приложениях плоское адресное пространство, в 16-разрядных адрес получается из сегмента и смещения, хитрым образом накладываемых друг на друга.
В 32-разрядных приложениях плоское адресное пространство, в 16-разрядных адрес получается из сегмента и смещения, хитрым образом накладываемых друг на друга.
отличие 16-битных приложений от 32-битныхЕсли смотреть в начало, то разрядность определяется процессором. А именно разрядностью инструкций. Все современные процессоры поддерживают 32-разрядные инструкции и 16-разрядные. По моему начиная с 386-ых, если не вру.
Дальше проблема стоит в том, поддерживает (или точнее использует) ли система возможности 32-ух разрядов процессора, т.е. какое ядро. Утверждается, что начиная с 95-х виндов система 32-разрядная. Хотя существовали примочки для Win3.x (т.н. Win32), а также что WIn95 не до конца 32-разрядная.
Преимущества не только в адресации. А например, сильно в операциях умножения и, особенно, деления. Если кто-то когда нибудь программировал на микропроцессоре на ассемблере - поймет.
Адресация - епархия ОС, а умножение/деление - приложения. Еще под DOS можно было откомпилировать программу так, чтобы она использовала арифметические возможности 386 процессора. Так что арифметика - дело важное, но от ОС не зависящее.
Еще под DOS можно было откомпилировать программу так, чтобы она использовала арифметические возможности 386 процессора.Ну это скорее всего требовали особенного софта. Но не буду спорить.
В начале обсуждения, говорилось о поддержке ситемой 32-разрядных приложений. Т.е. все таки 32-разрядное приложение не запустишь под 16-разрядной системой, даже если процессор поддерживает 32-р инструкции.
Т.е. приложения используют не только возможности адресации системы. Как мне кажется. Может и арифметику тоже. Потому как у разных типов процессоров могут быть различные инструкции, или нет?! Например, AMD использует точно такую же систему команд как Intel?
Похоже мы забрели немного далеко...
Все дело в том что Винды, начиная с 95, 16-тиразрядные приложения запускают в "виртуальной машине", т.е. как бы создают им свое собственное адресное пространство.
угу... это NT и выше запускают в "виртуальной машине" как вы говорите... а 95/98/ME нет.. иначе бы крах одного приложения не валил бы всю систему... как это бывает под этими системами... в них очень причудливо "переплетены" 16 и 32 разрядные части... из соображеений совместимости со старым ПО...
Ну Досовские приложения и 95-я запускает в виртуальной машине. А вот с приложениями Win 3.11 немного посложнее.
>> у разных типов процессоров могут быть различные инструкции, или нет?!
Ну те инструкции, которые существовали в процессоре модели Х, будут поддерживаться в модели Х + 1. Так называемая "обратная совместимость". Потому линейку х86 и называют так, что любой её представитель поддерживает команды 8086.
(надеюсь, я вопрос то правильно понЕл? Или под "разными типами" имелось в виду другое?)
>> AMD использует точно такую же систему команд как Intel?
Ну... как бы да, если не считать дополнитеьлных наборов инструкций: MMX, 3DNow!, SSE и SSE2. Но приложению от этого толку будет мало, если оно под них не оптимизировано.
Ну те инструкции, которые существовали в процессоре модели Х, будут поддерживаться в модели Х + 1. Так называемая "обратная совместимость". Потому линейку х86 и называют так, что любой её представитель поддерживает команды 8086.
(надеюсь, я вопрос то правильно понЕл? Или под "разными типами" имелось в виду другое?)
>> AMD использует точно такую же систему команд как Intel?
Ну... как бы да, если не считать дополнитеьлных наборов инструкций: MMX, 3DNow!, SSE и SSE2. Но приложению от этого толку будет мало, если оно под них не оптимизировано.