МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
Національний університет
„Львівська політехніка”
Кафедра САПР
Звіт
Про лабораторної роботи №1
На тему:
ОПЕРАЦІЙНА СИСТЕМА MS DOS.
ІНТЕРФЕЙС КОРИСТУВАЧА
З курсу „Системне програмування та операційні системи”
МЕТА РОБОТИ
Отримати практичні навики використання командної мови та ознайомитись з особливостями реалізації операційної системи MS DOS.
КОРОТКІ ТЕОРЕТИЧНІ ВІДОМОСТІ
Операційна система MS DOS - це основна складова системного програмного забезпечення - яка здійснює управління персональним комп'ютером та його ресурсами, забезпечує запуск програм та контроль за їх виконанням, підтримує інтерфейс користувача. MS DOS та її аналоги (PC DOS, DR DOS) є основною операційною системою 16-ти розрядних ПЕОМ. Вона також широко застосовується при інсталяції більш складних ОС та регламентних роботах. Практична цінність цієї системи для даного курсу полягає у вивченні її як базової ОС, операції якої безпосередньо відображені у її командах та параметрах і не приховані різноманітними оболонками "дружніх" інтерфейсів.
Основними складовими MS DOS є
- записана в ПЗУ базова система вводу-виводу (BIOS) - забезпечує інтерфейс та реалізацію базових функцій ОС для здійснення вводу-виводу,
- завантажувач - програма для завантаження двох основних модулів MS DOS (IBMBIO.COM та IBMDOS.COM чи ІO.SYS та MSDOS SYS) з гнучкого або жорсткого дисків,
- системні файли ІО SYS (доповнення до BIOS) та MSDOS SYS (реалізація високорівневих функцій DOS);
- командний процесор (COMMAND.COM) - забезпечує ввід га інтерпретацію команд користувача (вивід запрошення, виконання встроєних функцій, пошук, завантаженню в оперативну пам'ять та ініціалізація програм, які реалізують команди DOS);
- утиліти DOS - системні програми DOS, які виконують обслуговуючі функції (форматування дискет, перевірку га копіювання дисків, тощо);
- драйвери пристроїв - системні програми, які доповнюють систему вводу-виводу DOS та забезпечують обслуговування і розширення можливостей наявних чи нових пристроїв.
Файли та каталоги на дисках
Файл - поіменована область на диску в якій зберігаються організовані у вигляді певних структур дані. Файли поділяються на текстові та двійкові У вигляді текстових файлів зберігається текстова інформація: тексти програм, командні файли DOS. Кожен файл має унікальне позначення, яке складається в імені та розширення. Ім'я - це ідентифікатор, який містить 1-8 символів: малі чи великі(несуттєво) латинські букви, цифри та деякі службові символи ($,_,#,@,!та ін.). Розширення відділяється від імені крапкою і визначає тип файлу
ЕХЕ - переміщувана виконувана програма;
СОМ - непереміщувана виконувана програма;
ВАТ - командний файл;
FOR - програма па ФОРТРАНІ;
PAS - програма на Паскалі;
С - програма на Сі;
АSM - програма на Асемблері;
ТХТ - текстовий документ;
ВАК - остання копія зміненого файлу
MS DOS забезпечує, за допомогою зарезервованих імен, зв'язок файлів і вводу — виводу. При використанні них імен у файлових функціях інформація вводиться — виводиться на такі пристрої вводу — виводу:
PRN - принтер;
LPT1-LPT3 - пристрої, приєднані до паралельних портів 1 -3 (додатковий принтер):
AUX - пристрій приєднаний до послідовного асинхронного порту 1:
СОМ1-COM3 - пристрої, приєднані до послідовних асинхронних портів 1-3;
CON - системна консоль (клавіатура - при вводі, екран - при виводі);
NUL - фіктивний пристрій (операція вводу — виводу ігнорується).
Символ * позначає підстрічку будь-яких символів, а символ ? - один будь-який символ в імені файлу чи його розширенні.
Для організації файлів та забезпечення зручного доступу необхідна інформація про них може бути записана в каталоги (групування файлів в каталогах). На кожному диску є головний (кореневий) каталог. В ньому зареєстровані файли та підкаталоги (файли спеціального виду, які містять інформацію про файли та підкаталоги нижчого рівня). Імена підкаталогів - це ідентифікатори без розширення. Ієрархія каталогу та підкаталогів утворює деревовидну структуру для групування файлів та забезпечення зручного доступу до них. Шлях доступу до файлів визначається послідовністю імен каталогів, розділених знаком V Накопичувані на дисках позначаються латинськими буквами (великими або малими) з двокрапкою (а:,b:,с:). Буквами а: та b: позначаються накопичувані на гнучких дисках, а c: і d: - на жорстких (вінчестерах). Повне ім'я файлу, яке однозначно забезпечує пошук і доступ до нього на диску має таку структуру: [д:][шлях\]ім'я файлу, де: д: - дисковід
Встановлення біжучого дисковода, який буде використовуватись по замовчуванню, здійснюється вводом його позначення з двокрапкою. Наприклад: а:. Аналогічно може бути встановлений біжучий каталог (підкаталог) |д:]шлях . Наприклад: c:\DOS.
Пошук файлів по замовчуванню проводиться в біжучому каталозі на біжучому дисководі. Для виконуваних файлів (.ЕХЕ, .СОМ, .ВАТ) додаткові пристрої та шляхи пошуку можуть бути задані командою PATH.
Основні команди MS DOS
Після початкового завантаження MS DOS, яке здійснюється при вмиканні та перезавантаженні ПЕОМ система виводить на екран запрошення, наприклад с:\>. Кожна команда MS DOS складається з імені та потрібних параметрів, які розділяються пропусками. Ім'я команди та параметри можуть бути вказані як малими так і великими латинськими буквами, В системі використовуються такі службові комбінації символів:
^C (Ctrl+C) -- безумовне завершення програми;
^Z (Ctrl+Z) - кінець файлу при вводі з консолі;
Ctrl+Alt+Del - перезавантаження MS DOS
Робота з каталогами
dir [д:][шлях\][ім'я файла] - вивід інформації про файл в каталозі (якщо файл *, то про групу файлів, якщо ім'я файла відсутнє - то про всі файли);
cd [д:]шлях - зміна біжучого каталога;
md [д:]шлях - створення каталога;
rd [д:]шлях - видалення порожнього каталога;
tree [д:] - вивід дерева каталогів дисковода;
Робота з файлами
copy [д:][шлях\][ім'я_ файлу 1] [д:][шлях\][ім'я_файлу2] копіювання файлу 1 в файл2;
copy con ім'я_файлу - створення файлу з консолі;
copy [д:][шлях\] [ім'я_файлу] соп - вивід файлу на консоль;
copy [д:][шлях\][ім'я файлу] рrn - вивід файлу на принтер:
copy ім'я_файлу1 + iм'я_файлу2+ім'я_файлуN.ім'я_файлу - злиття N файлів;
геn [д:][шлях\]ім'я_файлу1 ім'я_файлу2 - перейменування файлу1 в файл2;
del [д:][шлях\]ім'я_фaйлу - видалення файлу;
type [д:]|шлях\][ім'я_файлу] - вивід файлу на екран;.
print [д:][шлях\][ім'я_ файлу] - вивід файлу на друк у фоновому режимі;
attrib [д:][шлях\]ім'я_ файлу - вивід атрибута файлу;
backup [д1 :][шлях\][імена файлів] д2: - створення резервної копії вказаних файлів з д1 на д2;
restore д1: [д:2][шлях\]імена_файлів - відновлення вказаних файлів з диску1 на диск2;
соmр [д:][шлях\]ім'я файлу [д:][шлях\]ім'я_файлу - порівняння файлу 1 та файлу2;
Робота з дисками
format д:[/s] - форматування диска (/s - системного диска);
label д: - вивід та заміна мітки диска;
vol д: - вивід мітки диска;
sys д: - перенос системних файлів на диск д: з диска програми sys;
chkdsk [д:][шлях\][ім'я_файла] - перевірка диска (файла на диску);
diskcopy д1: д2: - копіювання гнучких дисків;
diskcomp д1: д2: - порівняння двох дисків;
Формування операційного середовища
ver - вивід версії DOS на екран;
cls - очистка екрану;
date - вивід та встановлення дати;
time - вивід та встановлення часу;
display - вивід на екран символів знакогенератора.
Стандартний ввід/вивід та його пере направлення
При завантаженні операційної системи стандартним символьним вводом призначається клавіатура, а стандартним символьним виводом - екран дисплея. Однак в процесі роботи може виникнути необхідність переправлення стандартного вводу/виводу у файли, або від них. Для цього використовуються такі команди:
>[д:][шлях\]ім'я_файла[.розширення] - переправлення стандартного виводу з екрана у вказаний файл (неіснуючий - створюється, а існуючий - обнуляється системою);
a:>dir>prn - переправлення результатів команди dir з екрану на принтер;
>>[д:][шлях\]ім'я_файла[.розширення] - переправлення стандартного виводу з екрану у вказаний файл (неіснуючий - створюється, а існуючий - дописується системою);
a:>dir>>file - переправлення результатів команди dir з екрану у файл file (дозапис до вмісту цього файлу);
<[д:][шлях\]ім'я_файла[.розширення] - пере направлення стандартного вводу з клавіатури на файл;
a:>prog<fіle - пере направлення вводу вхідних даних для програми prog замість клавіатури з файлу file;
a:>dir:prog - пере направлення стандартного виводу програми dir на стандартний ввід програми prog (обмін символьними даними через стандартний ввід/вивід).
Файли пакетної обробки (командні файли - batch files)
Типові послідовності команд MS DOS можуть бути записані у командні файли (з розширенням .bat). Ці файли можуть зберігатись на диску і запускатись по імені (розширення не обов'язкове) користувачем на виконання. При створенні командного файла в його командах можуть бути вказані формальні параметри. Ці параметри під час виконання командного файла замінюються фактичними, вказаними користувачем в команді виклику командного файла. Формальні параметри в командах командного файла позначаються %n , де n = 0,1,2...9. Формальні параметри замінюються вказаними у команді виклику bat-файла фактичними у відповідності з номером n. Причому %0 замінюється іменем команди виклику bat-файла. Наприклад, copy %1 %2.doc або copy file1 file2.doc type %2.doc
a:>example file1 file2 type file2.doc
type %0.bat type example.bat
Підкоманди командних файлів:
echo on - вивід на екран послідовності команд bat-файла під час їх виконання;
echo off - заборона виводу тексту команд на стандартний вивід під час їх виконання;
echo <повідомлення> - вивід повідомлення на стандартний вивід при запуску. командного файла незалежно від значення параметра on/off;
echo - вивід біжучого значення параметра команди echo;
for %%змінна in (група) do (команда) - циклічне виконання команди для всіх елементів групи (здвоєння %% потрібно лише при включенні цієї команди у bat-файл);
goto мітка - безумовний перехід на командy, вказану у наступній за міткою стрічці (мітка записується в окремій стрічці bat-файла, містить до восьми символів і закінчується двокрапкою);
loop: - циклічне виконання фрагмента командного файла; dir ... goto loop
if [not] умовна команда - виконання команди при виконанні [невиконанні] умови:
errorlevel число - аналіз коду завершення програми;
стрічка1==стрічці2 - ідентичність стрічок (параметрів);
exist [д:][шлях\]ім'я_ файла[.розширення] - наявність файла у вказаному каталозі;
pause [повідомлення] - призупинка виконання командного файлу з видачею повідомлення (для продовження треба натиснути будь-яку клавішу);
rem [текст] - вивід до 123 символів коментаря (блокування команди поміченої як коментар);
Файл конфігурації CONFIG.SYS
Файл конфігурації CONFIG.SYS задає параметри операційної системи, а також вказує які системні програми (драйвери пристроїв) треба заносити в оперативну пам'ять при завантаженні DOS для розширення її можливостей. Файл CONFIG.SYS має знаходитись в кореневому каталозі диска. Якщо цей файл відсутній, то параметри встановлюються операційною системою по замовчуванню. Файл CONFIG.SYS є текстовим (ASCII) файлом який може змінюватись текстовим редактором. Кожна стрічка цього файлу має такий формат: команда=значення.
Основні команди файлу CONFIG.SYS.
Break=on/ofF - дозвіл/заборона негайного завершення програми при натисканні клавіш Ctrl+Break.
Buffers=кількість - максимальна кількість буферів для операцій вводу/виводу при роботі з диском. Рекомендована кількість 20-40 в залежності від обсягу диска. При кешуванні жорсткого диска кількість буферів може бути 4-5.
Files = кількість - максимальна кількість одночасно відкритих файлів. Рекомендоване значення не менше 20. Для роботи з великою кількістю файлів (наприклад з базами даних), це значення необхідно збільшувати для забезпечення високої швидкодії.
Lastdrive=6yквa - остання буква алфавіту, яка може використовуватись для позначення дисковода.
Country=код_країни,кодова_сторінка.повне_ ім'я_файлу_COUNTRY.SYS - інформація для встановлення формату дати і часу.
Dеvісе=ім'я_файлу_драйвера [параметри] --встановлення драйвера пристрою.
Device=ANSI.SYS - розширення можливостей виводу на екран і використання клавіатури.
Device=c:himem.sys - використання розширеної "верхньої" пам'яті.
DOS=HIGH,UMB
AUTOEXEC.BAT
CONFIG.SYS
@echo off
Rem вимкнути показ команд
path A:\
rem задати поточну директорію
mode con codepage prepare=((866) ega3.cpi)
mode con codepage select=866
rem налаштувати кодову сторінку знакогенератора
keyb ru,,keybrd3.sys
rem завантажити русифікатор клавіатури (кирилиця)
GOTO %CONFIG%
Rem передати управління в файл CONFIG.sys
:Norton_Commander
cls
a:\nc.exe
goto exit
:Standart_DOS
cls
goto exit
:DOS_with_High_Memory_Drivers
goto exit
:exit
[MENU]
Rem описати меню
MENUITEM=Norton_Commander
MENUITEM=Standart_DOS
MENUITEM=DOS_with_High_Memory_Drivers
MENUDEFAULT=Standart_DOS, 15
[Norton_Commander]
[Standart_DOS]
[DOS_with_High_Memory_Drivers]
device=A:\himem\himem.sys /testmem:off
rem завантажити драйвер верхньої пам’яті
dos=high
rem завантажити ОС в верхню пам’ять
buffers=40
files=40
stacks=10, 512
lastdrive=Z
devicehigh=display.sys con=(ega,,1)
rem завантажити драйвер дисплею в верхню пам’ять
[COMMON]
Rem команди які виконуються завжди
device=display.sys con=(ega,,1)
rem завантажити драйвер дисплею
Приклад використання циклів та перенаправлення потоків вводу/виводу
For %i in (t1.txt t2.txt t3.txt) do echo y | del %i
Ver >> t.txt
Tree > t.txt
Знищити файли з назвою t1.txt t2.txt t3.txt
Вивести інформацію про ОС в файл t.txt
Вивести інформацію про дерево каталогів в файл t.txt
Файли конфігурації:
Файл запуску трансляції та виконання програми на мові високого рівня програмування
P.BAT
@echo off
echo text of the program:
type prog.c
pause
echo compiling the program:
call bcc.exe prog.c
pause
runing the program
call prog.exe
pause
Текст програми на мові високого рівня (С++)
#include <stdio.h>
int main()
{
printf("Volodymyr Bondarchuk\n");
}
ВИСНОВОК
На даній лабораторній роботі я отримав практичні навики використання командної мови та ознайомився з особливостями реалізації операційної системи MS DOS. Операційна система MS DOS - це основна складова системного програмного забезпечення - яка здійснює управління персональним комп'ютером та його ресурсами, забезпечує запуск програм та контроль за їх виконанням, підтримує інтерфейс користувача. MS DOS та її аналоги (PC DOS, DR DOS) є основною операційною системою 16-ти розрядних ПЕОМ. Вона також широко застосовується при інсталяції більш складних ОС