Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OS(методичка).docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
403.88 Кб
Скачать

4.4. Управління процесами в ms-dos

4.4.1. Процеси в ms-dos

Як говорилося вище, управління процесами в однозадачних ОС, до яких відноситься MS-DOS, є порівняно тривіальної завданням.

Завантаження ОС завершується запуском програми командного інтерпретатора COMMAND.COM, в завдання якого входить:

· Читання й аналіз команд, що вводяться користувачем з клавіатури;

· Виконання внутрішніх команд системи, таких, як команда видачі змісту каталогу, команди копіювання, видалення і перейменування файлів і т.п.;

· Запуск на виконання системних та прикладних програм;

· Обробка критичних помилок, що відбулися в ході виконання системних функцій MS-DOS;

· Завершення роботи програми із звільненням всіх ресурсів, які займалися програмою.

Запускаючи програму користувача, COMMAND.COM не завершує власну роботу, а фактично переходить в стан сну. Після завершення запущеної програми COMMAND.COM відновлює роботу, видаючи запрошення до вводу наступної команди. Таким же чином програма користувача може

запустити іншу програму і чекати її завершення. Кількість одночасно присутніх в системі процесів обмежене тільки розміром пам'яті системи (не більше 640 Кб на всіх), проте тільки остання запущена програма може бути в активному (працюючому) стані. Якщо ж і ця програма блокується на виконанні системної функції (наприклад, очікує введення з клавіатури), то в системі не залишається активних процесів. Таким чином, термін «однозадачная ОС» в даному випадку слід розуміти як «ОС, що допускає не більше однієї активної задачі». Системі не доводиться займатися поділом процесорного часу та іншими «багатозадачними» проблемами, за винятком тільки збереження і відновлення контексту батьківської програми.

Деяким винятком з правила «одна активна задача» є резидентні програми MS-DOS, розглянуті в п. 4.4.5.

4.4.2. Середа програми

Середа програми (environment; інший переклад - «оточення») являє собою текстовий масив, що складається з рядків виду:

"Змінна = значення", 0

Тут змінна і значення - будь-які (в розумних межах) текстові величини, байт 0 завершує кожен рядок.

Поняття середовища було введено в системі UNIX і запозичена звідти в MS-DOS і Windows без особливих змін.

Є декілька стандартних (системних) змінних середовища, з яких найбільш відомі PATH (визначає шляхи до каталогів, в яких система шукає виконуваний файл) і PROMPT (задає вид підказки при діалозі з ОС). Крім того, багато прикладні програми вимагають для правильної роботи, щоб були задані специфічні змінні середовища, що описують, наприклад, розміщення робочих каталогів програми, спосіб роботи з розширеною пам'яттю або якісь інші характеристики режиму роботи програми.

Можна розглядати змінні середовища як свого роду параметри, передані програмі при її запуску, аналогічно тому, як підпрограма отримує параметри при виклику. Інтерпретатор команд COMMAND.COM також має своє середовище, яку називають кореневою середовищем. Для створення змінних кореневої середовища, їх видалення та зміни значень може використовуватися системна команда SET. Коли COMMAND.COM запускає програму користувача або одна програма запускає іншу, створюється породжений процес, який отримує власний екземпляр блоку середовища, при цьому за умовчанням створюється точна копія середовища батька, проте можна створити зовсім інше середовище.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]