ewoke: (Default)
[personal profile] ewoke
Операционная система - это прокладка между пользователем и железом, это не красивый рабочий стол (за рабочий стол отвечает отдельная программа-оболочка, позволяющая запускать другие программы).

Оболочка дос - (например) norton commander, венды - exploler (слышали про aston shell?)

Отличия между досом и вендами.

В дос:
запущенная программа монопольно имеет доступ к железу и памяти.
Неразделяемое выполнение текущей программы. Резидентные программы не в счет.
В дос все крутится в real mode, адресация памяти соответствующая (емм86/xms не в счет).
Конценпции библиотек нема, все свое программа таскает с собой.
Прямой доступ к винту, что на уровне файловой системы, что со стороны портов вв-вывода.
Настройки программы - как автор решит, например в ini файле в директории программы (rules.ini в red alert 1, превед)

Форматы исполнимых файлов - com (просто кусок кода размером до 64кб), exe (здесь уже при загрузке файла в память, загрузчик мог настраивать адреса внутри файла, т.о. в файле могли быть задуманы отдельные "сегменты" для кода, данных, стека, вместо одного сегмента сразу для всего - в com)

Резидентные (фоновые) программы под досом, с помощью которых (условно) можно было делать многозадачность: память программы, которая завершала работу, не помечалась как свободная, таким образом гарантировалась не-перезапись кода программы содержимым других программ при их запуске, и перехватывалось какое-либо прерывание (аппаратный сигнал таймера, например). Т.о., каждый "тик" таймера происходил вызов нашего кода.

Венда:
(применимо, скорее, к ветке nt: 2000,xp, т.к. win9x, как бы Микрософт не закапывал дос, была для нее надстройкой защищенного режима)

(здесь мои знания изобилуют белыми пятнами)

Все крутится в protected mode со своппингом (ткнув в адрес памяти, нельзя сказать, куда его спроецировал своппер, в физическую память, или в своп).
Программе ничего нельзя, кроме как вызывать api. Общение с железом только через драйвер.
Функции api имортируются из библиотек - kernel32.dll, user, shell.. можно и из своей dll-ки.
Про память для каждого процесса - вот тут я подзабыл, найду, отпишу в коммент.
У программ принудительно отнимается выполнение, таким образом обеспечивается многозадачность.
Есть понятие нитей/потоков (threads), мини-подпрограммы, порожденные материнским процессом, живут своей жизнью.
На ntfs есть разграничение прав на доступ к файлам; также ОС защищает (лочит) свои жизненно важные файлы - реестр, своп (про ntdetect такого сказать не могу).
Для настроек программ и ОС Микрософт родила реестр. Одному богу известно зачем. Программы все равно таскают с собой конфигурационные файлы, и это позволяет делать ПО переносимым.

Формат исполнимых файлов - отдельная тема.

Фоновые программы (процессы) под win32 - это фактически любая активная в данный момент задача, которую видно в диспетчере задач. У процесса, может и не быть окон. Можно запустить файл-менеджер, и затем скрыть его окно, теперь он невидим для alt-tab.

http://old.computerra.ru/gid/rtfm/system/272855/

Процессы в вин можно усыплять (suspend, процесс "замораживается").
Также есть широкоиспользуемая техника инжектов, но мне стоит об этом писать, когда я сам начну в этом практически разбираться.



Задумка с админскими правами у венды была хорошей, реализация на практике - плохой на букву Х.

(голосом джина из м/ф "Барон Мюнгхаузен", который "кущает")

"Какой-такой админ-пассвад из минимум 6 символов, да чтобы с одной цифрой, одной маленькой буквой и одной большой, да?"

Круглый вопросительный знак под трансовую мелодию первого старт-скрина ВинИксПи, который предложил называть себя "помощником по виндовс", однозначно против админ-паролей в принципе.

Вот и повелось программы писать из расчета, что у учетки по умолчанию полные привелегии. Фотошоп требует админских прав, миранда требует адм. прав..

Впрочем, сейчас ограниченная учетка, как я понимаю, не панацея - если что, запишутся в локальную автозагрузку (на винлокерах под win7 так и есть), пошифровать пользовательские данные - вот они, пожалуйста.

Profile

ewoke: (Default)
ewoke

October 2025

S M T W T F S
   1234
5 67891011
121314 15161718
19202122232425
262728293031 

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 21st, 2026 04:01 am
Powered by Dreamwidth Studios