17126

Структура ОС MS – DOS. Основні команди MS – DOS

Лекция

Информатика, кибернетика и программирование

Лекція №2 Тема: Структура ОС MS – DOS. Основні команди MS – DOS. План Історія й архітектура. Керування програмами. Керування пам'яттю. Введеннявиведення і файлова система. Структура MS DOS. Історія й архітектура ОС MS DOS була розроблена фірмою Microso...

Украинкский

2013-06-29

162.5 KB

10 чел.

Лекція2

Тема: Структура ОС MSDOS. Основні команди MSDOS.

План

  1.  Історія й архітектура.
  2.  Керування програмами.
  3.  Керування пам'яттю.
  4.  Введення-виведення і файлова система.
  5.  Структура MS DOS.

Історія й архітектура

ОС MS DOS була розроблена фірмою Microsoft за замовленням IBM для персональних комп'ютерів IBM PC. Перша версія ОС з'явилася в 1980 р. IBM PC і його програмне забезпечення не розглядалися тоді фірмою IBM як можливий стратегічний напрямок, звідси й MS DOS являє собою ОС із мінімальними можливостями. MS DOS пройшла довгий шлях розвитку, але цей розвиток полягав насамперед у пристосовуванні ОС до випереджального росту можливостей апаратури й, у меншому ступені, - в удосконалюванні структури самої ОС і розвитку її принципових можливостей.

MS DOS в основі своєї була й залишається однозадачной, однокористувальницькою системою. Ядро системи розроблене для 16-розрядного процесора Intel 8086, не використає захищений режим й обсяг пам'яті понад 1 Мбайт, що стали доступними в наступних моделях.

Архітектура MS DOS показана на малюнку 1. Системне програмне забезпечення ПЭВМ складається із двох рівнів. Нижній рівень становить Базова Система Вводу-Висновку (BIOS), збережена в ПЗУ. Другий рівень становить властиво MS DOS. Системні виклики реалізовані в програмних перериваннях. Усього можливо 256 типів (кодів) переривань. З них переривання з 16-ричными кодами від 0 до F зарезервовані за апаратурами, переривання з кодами від 10 до 1F - звертання до BIOS, переривання з кодами від 20 до 3F - звертання до MS DOS. Додаткам доступні не тільки будь-які звертання до MS DOS і до BIOS, але й такі команди, які в інших системах є привілейованими, наприклад, команди вводу-висновку, отже, додатка мають доступ до апаратур в обхід ОС й BIOS.

Рис. 1. Архітектура MS DOS

Керування програмами

Роль блоку контексту виконуваної програми грає структура даних, що випереджає програмний сегмент й именуемая Префікс Програмного Сегмента (PSP). PSP формується системою при завантаженні програми, ОС зберігає серед своїх даних адреса PSP виконуваної програми, що відіграє роль системного ідентифікатора активного процесу.

Програми в MS DOS бувають двох видів: COM- і EXE-програми. COM-програма не може мати розмір більше 64 Кбайт. У всіх програмах адресація ведеться щодо вмісту базових регістрів. В COM-програмі вміст всіх базових регістрів однаково й формується Завантажником ОС. В EXE-програмі вміст базових регістрів може мінятися, тому при завантаженні такої програми відбувається настроювання адрес - модифікація адресних полів тих команд програми, які виконують завантаження базових регістрів.

Оскільки програми користувача мають можливість перехоплювати будь-які - програмного й апаратні - переривання, користувач має можливість створювати резидентні програми - програми, які після завершення залишаються в пам'яті. Резидентна програма звичайно містить у собі оброблювач перехопленого переривання (наприклад, від таймера, від клавіатури), що виконує активізацію резидентної програми по цьому перериванню. І створення резидентних програм, і перехоплення переривань підтримуються системними викликами MS DOS. Після виконання резидентною програмою своїх дій відновляється виконання перерваної програми. Таким чином, резидентні програми в MS DOS забезпечують деяка подоба многозадачности. Збереження/відновлення контексту (регістрів) перерваної програми почасти виконується механізмом команд INT (програмне переривання) і RET (повернення з переривання), почасти покладає на резидентну програму. Для повного перемикання контексту резидентна програма повинна знайти в системній області пам'ять адреса PSP перерваної програми й замінити його на адресу свого PSP, але багато резидентних програм цього не роблять і виконуються в контексті перерваної програми. Відзначимо також, що всі системні виклики MS DOS спільно використають тільки дві стеки й, таким чином, є нереентерабельними. Тому на застосування системних викликів у резидентних програмах накладаються значні обмеження.

 Керування пам'яттю

Керування пам'яттю оперує блоками змінної довжини в реальній пам'яті. Віртуальна адресація в програмі - щодо вмісту одного або декількох сегментних регістрів. Якщо вся програма (код, стек, дані) міститься в межах одного 64-розрядного сегмента, то занесення реальної адреси початку сегмента в сегментні регістри виробляється завантажником MS DOS. Якщо ж програма многосегментная, вона містить команди завантаження сегментних регістрів, завантажник модифікує ці команди реальними адресами сегментів.

Структура адресного простору MS DOS показана на малюнку 2. Програми й користувальницькі дані розміщаються в області, позначеної як "DOS і транзитні програми". При завантаженні програми їй виділяються два блоки пам'яті, називані сегментом оточення й програмним сегментом. Програма в ході виконання може запитувати/звільняти будь-яку кількість додаткових блоків пам'яті. Одиницею розподілу пам'яті є параграф (16 байт). Виділюваний блок пам'яті завжди складається із цілого числа параграфів. Перший параграф кожного блоку містить Блок Керування Пам'яттю (MCB), у якому серед іншого втримується ідентифікатор програми - власника блоку або ознака вільного блоку. Поле розміру є завуальованим покажчиком на наступний блок: адреса наступного блоку можна визначити, знаючи адресу поточні і його розмір. У системі не передбачені ніякі засоби боротьби із фрагментацією пам'яті, тому що в однозадачной ОС інтенсивність запитів на виділення/звільнення пам'яті не може бути занадто великий.

Рис.  2 Розподіл пам'яті в MS DOS

 Введення-виведення і файлова система

Керування вводом-висновком здійснюється драйверами пристроїв. Структура драйвера має деяку надмірність, тому що формувалася, очевидно, розраховуючи на многозадачность у майбутньому, що так і не відбулася. Драйвери завантажуються й инициализируются при завантаженні системи. Звертання до драйверів уніфіковані, і кожен драйвер "уміє" виконувати лише підмножину операцій з єдиного для всіх драйверів набору можливих операцій. Розрізняються драйвери блокових (дискових) і символьних пристроїв.

Логічна файлова система MS DOS забезпечує ієрархічну структуру зберігання даних у вигляді "лісу" - окремого дерева каталогів на кожному логічному диску. Ім'я файлу складається із властиво імені (8 символів) і розширення (3 символи). Фізична структура зберігання даних на жорсткому диску показана на малюнку 3. Структура інформації на гнучкому диску відповідає структурі одного логічного розділу.

Рис. 3 Структура інформації на диску файлової системи FAT

Перший сектор диска займає Головний Завантажувальний Запис (MBR - Master Boot Record), що містить програму початкового завантаження й таблицю розділів - інформацію про розбивку фізичного диска на логічні. У таблиці розділів передбачені позиції для 4 розділів, але кожен розділ може містити своє розширення MBR, тобто може бути розбитий ще на 4 розділи й т.д. MBR не є структурою, що ставиться до MS DOS, вона завантажується програмою початкового завантаження BIOS і застосовується з усіма ОС, що працюють на платформі Intel-Pentium. Більше того, різні логічні диски можуть містити різні ОС. Програма початкового завантаження в MBR визначає, з якого логічного диска повинна завантажуватися ОС і зчитує завантажувальний сектор цього диска.

Завантажувальний сектор містить програму початкового завантаження ОС (якщо диск є завантажувальним) і інформацію про параметри логічного диска.

Центральною структурою файлової системи MS DOS є Таблиця Розміщення Файлів (FAT - File Allocation Table). FAT являє собою "карту" дискового простору області даних. Область даних умовно розбивається на кластери - ділянки із цілого числа суміжних секторів. Розмір кластера фіксований для даного логічного диска й кластер є одиницею розподілу дискової пам'яті. Кожному кластеру відповідає елемент FAT. Розмір елемента - 12 або 16 біт, звідси файлову систему часто називають FAT12 або FAT16. У кожному елементі каталогу, що описує файл або підкаталог, утримується номер першого кластера, виділеного файлу. В елементі FAT, що відповідає цьому кластеру перебуває номер наступного кластера й т.д. Спеціальний код в елементі FAT индицирует останній кластер файлу. Спеціальні коди елементів зарезервовані для опису вільних і збійних кластерів. Оскільки FAT є ключовою структурою файлової системи, на диску для надійності зберігаються дві її копії.

Cледующая структура - кореневий каталог - містить опис файлів і підкаталогів у кореневому каталозі. Корнєвій каталог (а також і підкаталоги) складається з 32-байтных елементів, у кожному з яких утримується ім'я й розширення, атрибути, розмір, номер початкового кластера файлу або підкаталогу. Всі структури, показані на малюнку 3, створюються при форматуванні диска, отже, розмір кореневого каталогу обмежений. Підкаталоги ж створюються в області даних у міру необхідності, їхній розмір практично необмежений.

Структура MS DOS

В операційну систему MS DOS входять наступні основні модулі:

  1.  Базова система уведення - висновку (BIOS);
  2.  Блок початкового завантаження (Boot Record);
  3.  Модуль розширення BIOS (IO.SYS);
  4.  Модуль обробки переривань (MS DOS.SYS);
  5.  Командний процесор (COMMAND.COM);
  6.  файли-драйвери, які після їхнього завантаження на згадку забезпечують роботу таких пристроїв, як миша, CD-ROM й ін.
  7.  Утиліти ОС, що виконують різні сервісні функції (форматування дисків й ін.).

Базова система BIOS апаратно залежна й перебуває в пам'яті ПЗУ ПК. Ця частина операційної системи є убудованою в ПК.

Вона реалізує наступні основні функції:

Автоматичну перевірку апаратних компонентів при включенні  ПК;

Виклик блоку початкового завантаження ОС (завантаження на згадку програми операційної системи відбувається у два етапи: спочатку завантажується блок початкового завантаження (Boot Record) і на нього передається керування, потім за допомогою цього блоку  - інші модулі).

Блок початкового завантаження (Boot Record) - це дуже коротка програма (близько 512 байт), що перебуває в першому секторі кожного диска з операційною системою DOS. Boot Record завантажує на згадку ще два модулі ОС (системних файлів io.sys, msdos.sys), які завершують процес завантаження DOS.

Модуль IO.SYS розширення BIOS  являє собою доповнення до BIOS у ПЗУ. Він набудовує ОС на конкретну конфігурацію ПК і дозволяє підключати нові драйвера до нестандартних пристроїв уведення/висновку.

Модуль обробки переривань MS DOS.SYS - реалізує послуги пов'язані з обслуговуванням файлової системи й операцій уведення - висновку

Командний процесор MS DOS - програма COMMAND.COM - забезпечує виконання команд й утиліт, пов'язаних з керуванням файловою системою, виконанням програм, керуванням параметрами оточення. Забезпечується також перенапрямок стандартного вводу-висновку й конвеєрне виконання команд. COMMAND.COM - процесор командного рядка, повсюдно MS DOS використається з полноэкранными оболонками, найбільш популярна з яких - Norton Commander.

Література:

Гордеев А.В. Операционные системы: Учебник для вузов. - 2-е изд. – СПб.: Питер, 2004. – 416 с.

[2], 40-60

Контрольні запитання:

  1.  Чи володіє MS DOS якими-небудь перевагами перед персональними ОС наступного покоління?
  2.  У чому складається різниця між COM- і EXE-програмами?
  3.  Яким образом в MS DOS може бути забезпечена подоба многозадачности?
  4.  Яка з описаних у Частині I моделей пам'яті застосовується в MS DOS?
  5.  З яких міркувань в MS DOS не включені засоби боротьби із фрагментацією оперативної пам'яті?
  6.  Чому пам'ять програми MS DOS обмежується 640 Кбайтами?


 

А также другие работы, которые могут Вас заинтересовать

19532. Цифровая обработка сигналов. Основные понятия 608.07 KB
  Лекция 1.Цифровая обработка сигналов. Основные понятия Введение В настоящее время методы цифровой обработки сигналов digital signal processing DSP находят все более широкое применение вытесняя постепенно методы основанные на аналоговой обработке. В данном курсе рассматрива...
19533. Преобразование Фурье и обобщенные функции 641.26 KB
  2 Лекция 2. Преобразование Фурье и обобщенные функции Вспомогательные утверждения Лемма. Справедлива формула 1 Доказательство. Хотя формула 1 хорошо известна мы приведем ее доказательство поскольку она является основой многих дальнейших выкл...
19534. Восстановление дискретного сигнала 146.5 KB
  Лекция 3 Восстановление дискретного сигнала Наша цель найти необходимые условия при которых сигнал может быть восстановлен по дискретной выборке Прежде всего отметим часто часто используемый факт: Преобразование Фурье от последовательности Пусть имеется сиг...
19535. Дискретное преобразование Фурье (ДПФ) 487.85 KB
  2 Лекция 4. Дискретное преобразование Фурье ДПФ В данной лекции установим свойства дискретного преобразования Фурье аналогичные свойствам непрерывного преобразования. Как обычно преобразования типа почленного интегрирования ряда перестановки порядка с
19536. Цифровые фильтры. Основные понятия 489.7 KB
  2 Лекция 5. Цифровые фильтры. Основные понятия Цифровые фильтры являются частным случаем линейных инвариантных систем. Существенное ограничение связано с физической реализуемостью системы. Определение. Система называется физически реализуемой если сигн...
19537. Z-преобразование. Фильтры первого порядка 192.23 KB
  2 Лекция 6. Zпреобразование. Фильтры первого порядка Zпреобразование Иногда вместо преобразования Фурье используют Zпреобразование. Оно определяется формулой 1 В формуле 1 ряд является формальным если же он сходится то определяет аналитическую ф...
19538. Фильтры второго и высших порядков 452.79 KB
  1 Лекция 7. Фильтры второго и высших порядков Определение фильтра второго порядка Примером фильтра вторго порядка является фильтр . Рассматриваем только вещественный случай. Переходя к Z преобразованию получим: . Найдя корни многочлена в знаменателе пере
19539. Фильтры Баттеруорта 297.97 KB
  2 Лекция 8. Фильтры Баттеруорта Отыскание параметров фильтра В левой и правой частях в знаменателе находятся многочлены от переменной z. Найдем корни этих многочленов. Множество корней по построению инвариантно относительно замены . Для устойчивости фильтр...
19540. Осциллятор. FIR фильтры 500 KB
  3 Лекция 9. Осциллятор. FIR фильтры Полосовой фильтр на основе фильтра низких частот В предыдущей лекции было показано каким образом можно построить различные фильтры. Оказывается любой из таких фильтров можно получить на основе фильтра низких частот с помо...