MKS Toolkit
2025-12-07 19:51Ещё одно необычное добавление в коллекцию: набор классических юниксных утилит для MS-DOS, под названием MKS Toolkit. Позже были и DJGPP, и Cygwin, и MinGW, но MKS стал первой весточкой, что юниксная жизнь возможна даже во враждебных средах. 😀 И даже на 8088 процессоре.
Имеются непривычные для DOS вещи. К примеру, dev показывает список установленных драйверов.

Команда df выдаёт список файловых систем. Для каждого логического диска показывает количество свободного места и полный размер.

Командой ps можно посмотреть все досовские "процессы".

Имеются непривычные для DOS вещи. К примеру, dev показывает список установленных драйверов.

Команда df выдаёт список файловых систем. Для каждого логического диска показывает количество свободного места и полный размер.

Командой ps можно посмотреть все досовские "процессы".


no subject
Date: 2025-12-08 04:41 (UTC)no subject
Date: 2025-12-08 05:48 (UTC)no subject
Date: 2025-12-08 08:51 (UTC)Что это за командa ]r??X??b и почему процессъ PPID=FREE запускаетъ команду "3440 bytes"?
Возникаетъ вопросъ - что такое "досовскiе процессы" и противъ кого они были направлены, кого на этихъ процессахъ обвиняли, а кого объявляли FREE?
no subject
Date: 2025-12-08 09:02 (UTC)no subject
Date: 2025-12-08 09:06 (UTC)no subject
Date: 2025-12-08 09:11 (UTC)Достаточно в программах не менять никогда Сегментные регистры CS, DS, SS, ES.
В тогдашних компиляторах это называлось "модели памяти Tiny и Small"
no subject
Date: 2025-12-08 09:17 (UTC)Или предполагается, что въ 640КБ памяти работаютъ всего 10 независимыхъ процессовъ и каждому даны по 64КБ памяти? И что каждый процессъ получитъ свои сегментные регистры и никогда-никогда не будетъ ихъ мѣнять?
no subject
Date: 2025-12-08 09:28 (UTC)Процессор 16-битный и просто прибавляя смещение невозможно выбраться за пределы сегмента 64K
каждый процессъ получитъ свои сегментные регистры и никогда-никогда не будетъ ихъ мѣнять?
Да, примерно так.
Причём ОС сможет перемещать сегменты в физической памяти незаметно для процессов
Теоретически предел такой модели 256K на процесс: 64K под код, 64 под стек и 2 сегмента под данные
А если задействовать EMS, то можно много процессов поместить.
no subject
Date: 2025-12-08 09:28 (UTC)no subject
Date: 2025-12-08 09:36 (UTC)Систему это не убьёт
Переключение процессов будет по прерыванию таймера
Interrupt Handler вызовется в любом случае. И он способен обнаружить переполнение стека и прибить процесс
no subject
Date: 2025-12-08 09:53 (UTC)Да, про это я не подумалъ. Отъ этого спасетъ только Haskell ;) потому что тамъ стекъ размѣщается на Heap.