Презентація на тему «Основні концепції операційних систем»

content: ОПЕРАЦІЙНІ СИСТЕМИЛекція 1-2. Основні концепції операційних систем.Викладач:Карчевська Ольга Ігорівна,асистент кафедри інформаційних систем та технологій,Інститут підприємництва та перспективних технологійНаціонального університету “Львівська політехніка”

content: Лекція 1-2. Основні концепції операційних систем.План лекції.1. Склад комп'ютерних систем. Поняття операційної системи.2. Функції операційних систем.3. Класифікація операційних систем.4. Історія розвитку операційних систем.5. Склад операційних систем.6. Функціональні компоненти операційних систем

content: 1. Склад комп'ютерних систем. Поняття операційної системи.Комп'ютерна система – це сукупність апаратного та програмного забезпечення комп'ютера.Апаратне забезпечення включає:центральний процесор;оперативну пам'ять;зовнішню пам'ять: жорсткі диски, CD/DVD – диски, флеш-пам'ять;шину даних;пристрої введення-виведення: консоль, клавіатура, мишка, принтер, сканер, мережне обладнання.Програмне забезпечення поділяється на дві великі групи:системні програми – керують роботою комп'ютера;прикладні програми – виконують розв'язування задач користувача.

content: Труднощі у створенні та використанні програмного забезпечення1) потрібно напряму звертатися до апаратних пристроїв;2) необхідно точно знати принципи роботи компонентів комп'ютера;3) при написанні програми потрібно враховувати, що вонабуде виконуватись на різних комп'ютерах, і, відповідно, програмувати звертання до багатьох можливих моделей пристроїв.4) При запуску програми потрібно, щоб вона не перешкоджала роботі інших програм.Ці задачі є досить складними як для окремих програмістів, так і для команд, можуть спричинити багаторазове написання однотипного коду різними людьми.Складність будови апаратного забезпечення вимагає багато часу на його вивчення, що значно сповільнює розробку нових програм.Необхідним є засіб, який би містив стандартні функціїдля роботи з апаратурою.

content: Місце операційної системи в загальній структурі комп'ютераАпаратне забезпеченняОпераційна системаСистемні та прикладніпрограмиІнтерфейс прикладного програмуванняІнтерфейс апаратного забезпеченняАбстракціїДеталі доступуОпераційна система – це програмне забезпечення, що реалізує зв'язок між прикладними програмами та апаратними засобами комп'ютера; забезпечує керування обчислювальним процесом та організує взаємодію з користувачем.

content: 2. Функції операційних систем.Виділяють дві основні функції операційних систем:Операційна система як розширена машинаОпераційна система як менеджер ресурсів

content: Операційна система як розширена машинаВ якості розширеної машини операційна система забезпечує:Виконання на вимогу програм користувача тих елементарних (низькорівневих) дій, які є спільними для більшості програмного забезпечення і часто зустрічаються майже у всіх програмах (ввід і вивід даних, запуск і зупинка інших програм, виділення та вивільнення додаткової пам'яті тощо).Стандартизований доступ до периферійних пристроїв (пристрої введення-виведення).Операційна система містить функції, котрі об'єднують набори команд читаннязапису на жорсткий диск, доступу до оперативної пам'яті, виведення інформації на монітор чи принтер.Доступ до апаратних пристроїв програмістами та користувачами здійснюється за допомогою зручних абстракцій.Приклад: для безпосереднього запису на жорсткий диск потрібно було б звертатися до контролера диску, програмувати процес запису на фізичному рівні. Натомість програмісти та користувачі оперують файлами, як абстракціями подання інформації на жорсткому диску.Виділення абстракцій дає змогу досягти апаратної незалежності прикладних програм, за умови, що дане апаратне забезпечення підтримується операційною системою.

content: Операційна система як менеджер ресурсівОпераційна система в якості менеджера ресурсів здійснює такі функції:Керування оперативною пам'яттю (розподіл між процесами, організація віртуальної пам'яті).Керування доступом до даних зовнішніх носіїв (жорсткий диск, оптичні диски тощо).Мережеві операції.Паралельне або псевдопаралельне виконання задач (багатозадачність).Організація надійних обчислень, що базується на розмежуванні доступу до ресурсів (неможливості впливу одного процесу на перебіг інших).Організація взаємодії між процесами: обмін даними, синхронізація.Захист самої системи, а також користувацьких даних і програм від дій користувача або програм.Розділення прав доступу (аутентифікація, авторизація).

content: 3. Класифікація операційних систем.За своїм призначенням, операційні системи бувають:універсальні (для загального використання);спеціальні (для розв'язання спеціальних задач);однозадачні (в окремий момент часу можуть виконувати лише одну задачу);багатозадачні (в окремий момент часу здатні виконувати більше однієї задачі);однокористувацькі (в системі відсутні механізми обмеження доступу до файлів та на використання ресурсів системи);багатокористувацькі (декілька користувачів одночасно і незалежно працюють із операційною системою), всі багатокористувацькі операційні системи також є багатозадачними;реального часу (система підтримує механізми виконання задач реального часу, тобто такі, для яких будь які операції завжди виконуються за наперед передбачуваний і незмінний при наступних виконаннях час).

content: Класифікація операційних систем. (продовження).Відносно можливостей внесення змін до вихідного коду операційні системи бувають:відкриті (англ. open source) – з відкритим програмним кодом;комерційні операційні системи, які переважно мають закритий код.За метою використання операційні системи можна умовно поділити на:сервернікористувацькі.

content: 4. Історія розвитку операційних систем.І. Системи пакетної обробки (1955-1965рр.)В цей час обчислення здійснювались за допомогою великих ЕОМ, котрі займали цілі кімнати та потребували значних витрат на їх придбання та експлуатацію.Суть пакетної обробки зводилась до наступної послідовності дій:Збирали повний пакет завдань для ЕОМ, закодований на перфокартах;Дані записували на магнітну стрічку;Стрічку встановлювали на ЕОМ, завантажували спеціальну програму, котра зчитувала програму зі стрічки;Після завершення виконання програми магнітну стрічку переносили на пристрій для друку результатів.Програми писали на мовах Fortran або Асемблер.Найпоширеніші операційні системи: (FMS – Fortran Monitor System, IBSYS – операційна система компанії IBM).Всі операційні системи були однозадачні.

content: Історія розвитку операційних систем.ІІ. Багатозадачні операційні системи (1965-1980 рр.)1) OS/360 для комп'ютерів сімейства IBM/360;2) CTSS (Compatible Time Sharing System), Масачусетський університет.Перша система, що підтримувала режим розподілу часу;3) MULTICS (MULTIplexed Information and Computing Service), Масачусетський університет, Bell Labs, General Electrics.4) UNIX, написана на основі MULTICS, розробку розпочав Кен Томпсон, спеціаліст з Bell Labs.Основні риси систем:Підтримка багатозадачності,Можливість зчитувати нові дані по мірі виконання поточних задач та вивільнення з-під них пам'яті – “підкачка даних”, або spooling.Режим розподілу процесорного часу між користувачами.

content: Історія розвитку операційних систем.ІІІ. Операційні системи для персональних комп'ютерів (1980-і – наш час)1) СP/M (Control Program for Microcomputers) – операційна система для перших персональних комп'ютерів на базі процесора Intel 8080. Розробник – Гарі Кіндел, Digital Research;2) MS-DOS (Microsoft Disk Operating System), Тім Патерсон, Microsoft.3) Windows 1.02.03.19598ME – графічні оболонки для MS-DOS,4) Windows NTXPVista7 – самостійні операційні системи з графічним інтерфейсом.5) Похідні від UNIX системи: System V, FreeBSD, OpenBSD, Linux та інші.

content: Операційні системи для персональних комп'ютерів (1980-і – наш час) (продовження)Основні події:Корпорація IBM створила персональний комп'ютер IBM PC;Розробка MS DOS;Даг Енгельбадр розробив графічний інтерфейс користувача (Graphic User Interface - GUI);Створення Windows – оболонки над MS DOS з графічним інтерфейсом;Створення 32-розрядної операційної системи Windows NT.

content: 5. Склад операційних системСучасні операційні системи складаються з наступних основних компонентів:ядро операційної системи, що забезпечує розподіл та управління ресурсами обчислювальної системи;базовий набір прикладного програмного забезпечення, системні бібліотеки та програми обслуговування.Ядро системи — це набір функцій, структур даних та окремих програмних модулів, які завантажуються в пам'ять комп'ютера при завантаженні операційної системи та забезпечують три типи системних сервісів:управління введенням-виведенням інформації (підсистема вводу-виводу ядра ОС);управління оперативною пам'яттю (підсистема управління оперативною пам'яттю ядра ОС);управління процесами (підсистема управління процесами ядра ОС).

content: 6. Функціональні компоненти операційних системФункціональні компоненти операційної системи призначені для виконання покладених на неї відповідних функцій:Процес (process) – базова одиниця обчислювальної роботи. Процес – це програма під час її виконання.Адресний простір процесу – набір адрес пам'яті, до яких йому дозволено доступ.Потік (thread) – окрема послідовність інструкцій в рамках одного процесу. Потоки, подібно до процесі, виконуються (для користувача) паралельно. Потоки використовують ресурси створивших їх процесів.Віртуальна пам'ять – дозволяє значно збільшувати обсяг наявної пам'яті.Компоненти керування введенням/виведенням:Драйвери пристроїв – програмні модулі, які керують пристроями певного типу з урахуванням всіх їхніх особливостейУніверсальний інтерфейс введення-виведення

content: Функціональні компоненти операційних систем (продовження)Файлова система як принцип організації даних у вигляді файлів. Файл – набір даних у файловій системі, доступ до яких здійснюється за іменем.Виділяють два рівні файлової системи:Логічний рівень – визначає зовнішнє подання файлової системи як сукупності файлів, виконання операцій над файлами.Фізичний рівень – визначає принципи розміщення структур даних файлової системи на певному пристрої.Засоби мережної підтримкиЗасоби убезпечення данихЗабезпечення надійності системи (захист даних від втрати у разі збоїв)Захист від несанкціонованого доступуЗасоби взаємодії користувача з операційною системою:Командний інтерпретатор – взаємодія з операційною системою шляхом командної мови.Графічний інтерфейс користувача – керування з допомогою вікон. кнопок, меню.

content: ВисновкиОпераційна система – це програмне забезпечення, що реалізує зв'язок між прикладними програмами та апаратними засобами комп'ютера; забезпечує керування обчислювальним процесом та організує взаємодію з користувачем.Виділяють дві основні функції операційних систем: розширена машина та менеджер ресурсів.Складовими операційних систем є: ядро, системні бібліотеки та програми обслуговування.Функціональні компоненти операційних систем: процес, віртуальна пам'ять, компоненти керування введенням/виведенням, файлова система, засоби мережної підтримки, засоби убезпечення даних, засоби взаємодії користувача з операційною системою.

content: Література:Таненбаум. Э. Современные операционные системы.2-е изд. – СПб.: Питер, 2002. – 1040 с.Шеховцов В. А. Операційні системи. – К.: BHV, 2005 . -576 с.