Курсова робота на тему: «ЗАГАЛЬНИЙ ОГЛЯД СТРУКТУРИ ОС»

ЗМІСТ

 

Вступ    3

Планування і диспетчеризація процесів і завдань    8

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

Управління пам’ятю в ОС    21

Управління введенням-виведенням    29

Файлова система    36

Організація паралельних взаємодіючих обчислень    39

Висновок    42

Список використаних джерел:    47

Вступ

Операційні системи відносяться до системного програмного забезпечення. Як відомо, все програмне забезпечення розділяється на системне і прикладне. До системного програмного забезпечення прийнято відносити такі програми і комплекси програм, які є загальними, без яких неможливе виконання або створення інших програм. Історія появи і розвитку системного програмного забезпечення почалася з того моменту, коли люди усвідомили що будь-яка програма вимагає операцій введення-виводу даних. Це відбулося в далеких 50-их роках минулого сторіччя. Власне операційні системи з’явилися трохи пізніше. Дійсно, якщо ми не матимемо можливості змінювати початкові дані і отримувати результати обчислень, то навіщо взагалі ці обчислення? Очевиднощо початкові дані можуть вводитися різними способами. На практиці використовуються найрізноманітніші пристрої і методи. Наприклад, ми можемо вводити початкові значення з клавіатури, задавати потрібні дії або функції задопомогою миші, прочитувати записи з файлу, знімати оцифровані значення з датчиків і так далі Частина початкових даних може бути передана в програму через область пам’яті, в яку заздалегідь інша програма занесла свої результати обчислень. Способів багато. Головне — виконати в програмі деякі дії, пов’язані з отриманням початкових даних. Аналогічно, і виведення результатів може бути організований, наприклад, на відповідні пристрої і у формі, зручній для сприйняття її людиною. Або результати розрахунків відправлятимуться програмою на деякі виконавчі пристрої, які управляються комп’ютером.

Програмування операцій введення-виведення відноситься до однієї з самих трудомістких областей створення програмного забезпечення. Тут мова йде не про використання операторів типу READ або WRITE в мовах високого рівня. Мова йде про необхідності створити підпрограму в машинному вигляді, вже готову до виконання на комп’ютері, а не написану за допомогою деякої системи програмування (систем програмування тоді ще не було). Підпрограму, яка замість звичайних обчислень, що управляє тим пристроєм, який повинен брати участь у операціях введення початкових даних або виведення результатів. За наявності такої підпрограми програміст може звертатися до неї стільки раз, скільки операцій введення-виведення з цим пристроєм йому вимагається. Для виконання цієї роботи програмістові недостатньо добре знати архітектуру обчислювального комплексу і уміти створювати програми на мові асемблера. Він винен відмінно знати і інтерфейс, за допомогою якого пристрій підключений до центральної частини комп’ютера, і алгоритм функціонування пристрою управління пристроем введення-виведення. Очевидно, що мало сенс створити набір підпрограм управління операціями введення-виведення і використовувати його в своїх програмах, щоб не примушувати програмістів кожного разу наново програмувати всі ці операції. З цього і почалася історія системного програмного забезпечення. Згодом набір підпрограм введення-виведення почали організовувати у вигляді спеціальної бібліотеки введення-виведення, а потім з’явилися і самі операційні системи. Основною причиною їх появи було бажання автоматизувати процес підготовки обчислювального комплексу до виконання програми.У 50-і роки взаємодія користувачів з обчислювальним комплексом була абсолютно іншою, ніж сьогодні. Програміст-кодер (від англ. coder — кодувальник) — спеціально підготовлений фахівець, що знає архітектуру комп’ютера і мову(и) програмування, за замовленням складав текст програми, часто по вже готовому алгоритму, розробленому програмістом-алгоритмістом. Текст цієї програми потім віддавався операторові, який набирав його на спеціальних пристроях і переносив на відповідні носії. Найчастіше як носії використовувалися перфокарти або перфострічка. Далі колода з перфокартами (перфострічка) передавалася в обчислювальний зал, де для обчислень за цією програмою потрібно було виконати наступні дії:

  • Оператор обчислювального комплексу з пульта вводив в робочі регістри центрального процесора і в оперативну пам’ять комп’ютера ту первинну програму, яка дозволяла считувати в пам’ять програму для трансляції початкових кодів і отримання машинної (двійковою) програми (простіше кажучи транслятор, який теж зберігався на перфокартах або перфострічці).
  • Транслятор прочитував початкову програму, здійснював лексичний розбір початкового тексту, і проміжні результати процесу трансляції частотак само виводили на перфокарти (перфострічку), що часто вимагало декількох проходів. Деколи для виконання чергового проходу доводилося в пам’ять комп’ютера завантажувати з перфокарт і наступну частину транслятора, і проміжні результати трансляції. Адже результат трансляції виводився також на носії інформації, оскільки об’єм оперативної пам’яті був невеликим, а завдання трансляції дуже складне.
  • Оператор завантажував в оперативну пам’ять комп’ютера отримані двійкові коди програми, що відтранслював, і підвантажував двійкові коди тих системних підпрограм, які реалізовували управління операціями введення-виведення. Після цього готова програма, розташована в пам’яті, могла сама прочитувати початкові дані і здійснювати необхідні обчислення. У разі виявлення помилок на одному з цих етапів або після аналізу отриманих результатів весь цикл необхідно було повторити.

Для автоматизації праці програміста (кодера) почали розробляти спеціальні алгоритмічні мови високого рівня, а для автоматизації праці оператора обчислювального комплексу була розроблена спеціальна керуюча програма, завантаживши яку в пам’ять один раз оператор міг її далі використовувати неодноразово і більш не звертатися до процедури програмування ЕОМ через пульт оператора. Саме цю програму, що управляє, і почали називати операційною системою. З часом на неї почали покладати все більше і більше завдань, вона почала рости в об’ємі. Перш за все розробники прагнули до того щоб операційна система якомога ефективніше розподіляла обчислювальні ресурси комп’ютера, адже в 60-і роки операційні системи вже дозволяли організувати паралельне виконання декількох програм. Окрім завдань розподілу ресурсів з’явилися завдання забезпечення надійності обчислень. На початок 70-х років діалоговий режим роботи з комп’ютером став переважаючим і у операційних систем нестримно почали розвиватися інтерфейсні можливості. Терміном інтерфейс (interface) позначають цілий комплекс специфікацій, що визначають конкретний чин взаємодії користувача з комп’ютером. На сьогоднішній день можна констатувати, що операційна система (ОС) представляє собою комплекс системних керівників і оброблювальних програм які, з одного боку, виступають як інтерфейс між апаратурою компьютера і користувачем з його завданнями, а з іншого боку, призначені для найбільш ефективного витрачання ресурсів обчислювальної системи і організаціїнадійних обчислень.

ЗАВАНТАЖИТИ

Для скачування файлів необхідно або Зареєструватись

Zagalnyj Oglyad OS (308.0 KiB, Завантажень: 1)

Сторінка: 1 2 3 4 5 6 7 8 9
завантаження...
WordPress: 23.38MB | MySQL:26 | 0,330sec