Hacker News Digest

10 августа 2025 г. в 13:15 • gitpi.us • ⭐ 113 • 💬 48

OriginalHN

#os-2#operating-systems#multitasking#ibm#microsoft#c-programming#assembly-language#dll#scheduling

Inside OS/2 (1987)

OS/2: ядро и сервисы
OS/2 — многозадачная ОС для 286/386, API-ориентированная, расширяемая. Архитектура: ядро, Windows Presentation Manager, LAN Manager. Достаточно ядра для многозадачности; WPM и LAN не обязательны.

SDK
Поставляется с оптимизирующим С-компилятором, макро-ассемблером, линковщиком, отладчиком CodeView, редактором. Документация по вызовам и драйверам.

Планировщик
Превентивный, вытесняющий: по таймеру ядро перехватывает CPU и переключает задачи. Приоритеты + кванты времени; при переключении сохраняются регистры и режимы.

Динамические библиотеки
API реализован в DLL; адреса 32-битные, параметры через стек. Экономия диска и RAM: код загружается и разделяется между процессами. Ошибки в DLL исправляются без пересборки приложений. Повторный запуск той же программы переиспользует код, выделяя только данные/стек/кучу.

Режимы процессора

  • Protected: многозадачность, изоляция процессов.
  • Real: совместимость с MS-DOS, прямой доступ ко всей памяти.