Войти на сайт

или
Регистрация

Навигация


Міністерство освіти і науки України

Вінницький технічний коледж

Спеціальність: 5.091504

Програма емуляції роботи командного

процесора операційної системи

Пояснювальна записка

до курсового проекту

з дисципліни: „Системне програмування ”

Виконав: студент групи 4ОК2

Гладкий А.В.

Прийняв:

Кисюк Д.В.

Вінниця 2010


ВСТУП

Мова С була винайдена і реалізована Деннісом Рітчі (Dennis Ritchie) для комп'ютера DEC PDP-11 в операційній системі Unix. Ця мова була розроблена на основі "старішої" мови BCPL, створеної свого часу Мартіном Річардсом (Martin Richards). BCPL зробив певний вплив на мову В, розроблену Кеном Томпсоном (Ken Thompson). У свою чергу розвиток мови В привів до створення в 1970 році мови С.

Впродовж багатьох років стандартом С була фактично версія, що поставляється разом з операційною системою Unix. Ця версія вперше була описана Браяном Керніганом (Brian Kernighan) і Деннісом Рітчі в книзі The С Programming Language (Englewood Cliffs, N.J.: Prentice-Hall, 1978). Влітку 1983 року був утворений комітет із створення для мови С стандарту ANSI (American National Standards Institute — Національний інститут стандартизації США). Треба відзначити, що процес стандартизації зайняв вельми чималий термін — шість років.

Стандарт ANSI був остаточно прийнятий в грудні 1989 року і вперше опублікований на початку 1990 року. Цей стандарт був також прийнятий організацією ISO (International Standards Organization — Міжнародна організація по стандартизації), тому він називається стандартом ANSI/ISO мови С++. У 1995 році була прийнята 1-а поправка до стандарту С++, згідно якої, серед іншого, було додано декілька бібліотечних функцій. У 1989 році стандарт С разом з 1-ю поправкою став базовим документом стандарту C++, що визначає С як підмножина C++. Версію С, визначену стандартом 1989 року, звичайно називають С89.

Впродовж 90-х років увага програмістів була прикована головним чином до розвитку стандарту C++. Тим часом розробка С також продовжувалася, привівши в 1999 році до появи стандарту С, який прийнято називати С99. В цілому С99 зберіг всі основні риси С89, тобто,

можна сказати, що мова С залишилась сама собою! Комісія стандартизації С99 надала основну увагу двом напрямам: додаванню декількох чисельних бібліотек і розвитку нових вузькоспеціальних засобів, таких як масиви змінної довжини і модифікатор покажчика restrict. Завдяки цим нововведенням мова С++ знову виявилась на вістрі розвитку мов програмування.

Версія С стандарту 1989 року в даний час найпоширеніша версія, вона використовується всіма компіляторами С, вона ж є основою для C++.

Мову С++ часто називають мовою програмування середнього рівня. Але це не значить, що С++ менш могутня, менш розвинена або важча у використанні, ніж мови високого рівня, такі як Basic або Pascal. Це також не значить, що С++ така ж громіздка і незручна, як асемблер. Мовою середнього рівня її називають швидше тому, що вона об'єднує в собі кращі риси мов високого рівня з можливостями асемблера.

Як мова середнього рівня С++ дозволяє маніпулювати бітами, байтами і адресами, тобто тими базовими елементами даних, з якими працює комп'ютер. Не дивлячись на це програма, написана на С++, володіє високою переносимістю. Переносимість — це властивість програмного забезпечення, створеного для одного типу комп'ютера або операційної системи, яке дозволяє легко переробити його для іншого типу, тобто перенести в інше обчислювальне середовище. Наприклад, якщо програму, що працює під управлінням DOS, легко переробити так, щоб вона працювала під управлінням Windows 2000, то така програма називається переносимою.

Всі мови високого рівня дотримуються концепції типів даних. Тип даних є набором значень, що зберігаються в змінних, а також набір операцій, виконання яких допускається над цими значеннями. Звичні типи даних — це цілі числа, символи і числа з плаваючою крапкою. Мова С++ має декілька вбудованих типів даних, проте вона не є мовою, що сильно типізується, як Pascal або Ada. У мові С++ допускаються майже всі перетворення типів. Наприклад, у виразах можна вільно змішувати змінні символьного і цілого типів.

На відміну від більшості мов високого рівня, в С++ майже відсутній контроль помилок в процесі виконання програми. Наприклад, не перевіряється порушення меж масивів. Відповідальність за подібні помилки повністю покладається на програміста.

Аналогічно цьому С++ не вимагає строгої сумісності параметрів і аргументів функцій. У мовах програмування високого рівня звичайно необхідно, щоб тип аргументу більш менш відповідав типу параметра. Для С++ це не характерно, тут аргумент може мати майже будь-який тип, якщо його можна розумно перетворити в тип параметра. Більш того, компілятор С++ автоматично здійснює всі види необхідних перетворень.

Відмітною особливістю мови С++ є можливість маніпулювання безпосередньо бітами, байтами, словами і покажчиками. Тому С++ добре пристосована для системного програмування.

Інша важлива особливість С++ — це мала кількість ключових слів, складаючих команди мови. У С89 визначено 32 ключові слова, причому в С99 додано лише 5 слів. Мови високого рівня звичайно мають значно більше ключових слів, наприклад, в більшості версій мови Basic їх кількість перевищує сотню!

Із за того, що в мові відсутні засоби введення/виведення й т.п., при програмуванні на ній істотну роль грає бібліотека стандартних програм, що здійснюють взаємодію із системою. У всіх системах, сумісних з ОС UNIX, існує сумісний набір програм для введення/виведення, керування пам'яттю, перетворення даних і виконуючи інші функції, використання яких забезпечує можливість переносу програм на інші ЕОМ.

Командний процесор COMMAND.COM розташовується на системному диску як звичайний файл. При завантаженні на згадку частина зазначеного файлу, називається резидентною (оскільки вона постійно розміщається в ОЗП), розташовується за BIO.COM і DOS.COM, інша частина - транзитна, розташовується, починаючи зі старших адрес пам'яті процесора. Резидентна частина разом із двома файлами (DOS.COM і BIO.COM) становлять ядро ОС, що постійно перебуває в оперативній пам'яті. Основними функціями командного процесора є: прийом і розбір команд, отриманих із клавіатури або з командного файлу; виконання вбудованих команд DOS, що перебувають усередині файлу COMMAND.COM; завантаження й виконання зовнішніх програм DOS і прикладних програм (це файли типу COM і EXE); обробку файлу автозапуску (AUTOEXEC.BAT) при завантаженні системи; стандартну обробку переривань.



Информация о работе «Програма емуляції роботи командного процесора операційної системи»
Раздел: Информатика, программирование
Количество знаков с пробелами: 27773
Количество таблиц: 0
Количество изображений: 2

Похожие работы

Скачать
30347
2
0

... підтримує більшість властивостей, властивих іншим реалізаціям UNIX, плюс низка тих, яких більше ніде немає. Ця голова - поверхневий огляд характеристик ядра Linux. Linux - це повна багатозадачна багатокористувацька операційна система. Це означає, що одночасно багато користувачів можуть працювати на одній машині, одночасно виконувати багато програм. Linux достатньо добре сумісний з низкою стандарт ...

Скачать
42736
0
2

... або "Mac OS", і це також позитивно позначається на використанні системи, дозволяючи вибрати його на власний розсуд. Крім того, цією ОС можна керувати за допомогою командних мов, використання яких не обмежує можливості і функціональність системи. Дана ОС є відкритою, що означає публічну доступність специфікацій інтерфейсів, протоколів і внутрішніх алгоритмів роботи системи. Ця риса сприяє розвитку ...

Скачать
156341
11
15

... в даній роботі, була опробована й досліджена в реальних умовах моєї професійної діяльності й показала свою працездатність і ефективність. 3. Розробка системи керування та актуалізації інформації web-сайту національного оператора Енергоринка   3.1 Вибір інструментарію для створення web-сайту та системи керування   Перед тим, як безпосередньо перейти до створення Web-сайту Національного ...

Скачать
206879
0
16

... . Механізм переривань забезпечує ефективна взаємодія пристроїв уведення-висновку з мікропроцесором. Переривання цікавлять нас тому, що обробка переривань - це прерогатива програмування на мові асемблера. У високорівневих мовах відсутні засоби роботи з перериваннями на машинному рівні. Переривання звичайно викликаються зовнішніми пристроями. Переривання сигналізує мікропроцесору, щоб він призупинив ...

0 комментариев


Наверх