Тема: класифікація та загальна характеристика програмного забезпечення. Операційна система.
Мета:
Хід уроку
1. Організаційний момент
Вітання з класом. Перевірка присутності і готовності учнів до уроку. Перевірка виконання домашнього завдання.
2. Актуалізація опорних знань.
3. Вивчення нового матеріалу
Якщо зібрали комп'ютер з (мінімального) набору обов'язкових модулів і під'єднали його до мережі, марно очікувати, що, хай і правильно зібраний, комп'ютер почне працювати. Цього не станеться, бо до інформаційної системи крім апаратного забезпечення, входить і програмне забезпечення. Воно відіграє таку саму важливу роль, як і архітектура персонального комп'ютера.
Зібраний на заводі комп'ютер схожий на дитину. На фізичному рівні він може виконувати багато корисних дій, але поки що не знає, як це робити. Тому комп'ютер, як і дитину, треба навчити. Тобто занести в його пам'ять потрібну інформацію. Цю інформацію подають у формі спеціальних програм, призначених забезпечити злагоджену роботу всіх частин комп'ютера та правила їх функціонування. Отже, крім важливої та потрібної складової — апаратного забезпечення — для продуктивної роботи комп'ютера потрібне програмне забезпечення.
Програмне забезпечення (ПЗ) — це сукупність усіх програм, що забезпечують злагоджену роботу комп'ютера і які використовують для виконання різноманітних завдань.
Програмне забезпечення буває різним, але є обов'язкова частина, без якої комп'ютер не може працювати. Це системне програмне забезпечення — частина ПЗ, призначена організовувати функціонування комп'ютера.
Завдяки програмному забезпеченню комп'ютери використовуються практично в усіх сферах нашого життя. Сучасне програмне забезпечення різнопланове. У залежності від функцій, виконуваних програмним забезпеченням, його можна розділити на 2 групи: базове (системне) програмне забезпечення та прикладне програмне забезпечення.
Базове (системне) ПЗ організовує процес опрацювання інформації в комп'ютері і забезпечує нормальне робоче середовище для прикладних програм:
Склад базового (системного) ПЗ:
однозадачні — в окремий момент часу можуть виконувати лише одну задачу;
багатозадачні — в окремий момент часу здатні виконувати більше однієї задачі і кількість задач залежить від потужності системи;
мережеві — із вбудованими можливостями для роботи в комп'ютерних мережах.
оболонки — надбудови над операційною системою, які дозволяють просто i з високою наочністю виконувати найуживаніші команди ОС;
утиліти — спеціалізовані програми, що підтримують комп'ютер у робочому стані й підвищують його продуктивність;
антивірусні засоби — програми для знаходження і лікування файлів, що заражені комп'ютерним вірусом, а також для запобігання зараження файлів вірусом.
транслятори-компілятори — читають всю програму цілком, роблять її переклад і створюють закінчений варіант програми машинною мовою, який потім і буде виконано;
транслятори-інтерпретатори — перекладають і виконують програму рядок за рядком;
асемблери — системи програмування, які включають мову асемблера та транслятор з цієї мови, є мовами програмування низького рівня.
тестові програми — використовують для перевірки правильності функціонування пристроїв комп'ютера і для виявлення несправностей у процесі експлуатації, вказують причину і місце несправності;
спеціальні програми контролю — здійснюють автоматичну перевірку працездатності системи обробки даних перед початком роботи обчислювальної системи.
Прикладне програмне забезпечення призначене для розв'язування конкретних задач користувача та організації обчислювального процесу інформаційної системи в цілому. Найпоширенішими є такі групи програм:
текстові, графічні й відеоредактори — програми для створення й опрацювання текстів, графіки і відео;
видавничі системи — програми для виготовлення книжок чи іншої поліграфічної продукції;
електронні таблиці — програми для опрацювання числових чи текстових даних, наведених у таблицях;
системи керування базами даних — програми для опрацювання структурованих великих обсягів даних з різноманітних галузей людської діяльності;
WEB-редактори;
системи автоматизованого проектування — програми для побудови креслень і керування процесом конструювання різних механізмів;
навчальні системи — програми для вивчення різних тем практично з усіх предметів;
інструментальні засоби, системи чи середовища програмування — засоби для створення (підготовки й виконання) програм користувачами на основі різних мов програмування: (середовище програмування АЛГО (Навчальна Алгоритмічна Мова), середовища Free Pascal та Delphi (мова програмування Паскаль), C++Builder чи Codeblocks (мови C, C++), JavaBuilder (мова Java) тощо;
програми для роботи у мережах тощо.
Програмне забезпечення, як і апаратна складова, є результатом праці багатьох людей. Це теж продукт. Але на відміну від матеріальної складової програмне забезпечення не обов’язково потребує фінансових витрат.
Ліцензія на програмне забезпечення — правовий документ, що визначає правила використання та поширення програмного забезпечення.
Вони істотно різняться щодо прав кінцевого користувача на використання програми.
Пропрієтарна ліцензія передбачає, що видавець ПЗ у ліцензії дає дозвіл її одержувачу використовувати одну або декілька копій програми, але при цьому сам залишається правовласником усіх цих копій.
Таким чином, практично всі права на ПЗ залишено за видавцем, а користувач здобуває лише дуже обмежений набір строго окреслених прав. Для пропрієтарних ліцензій типово перерахування великої кількості умов, що забороняють певні варіанти використання ПЗ, навіть тих, які без цієї заборони було б дозволено законом про авторське право. Прикладом пропрієтарної ліцензії може служити ліцензія на Microsoft Windows, яка включає великий список заборонених варіантів використання.
Найзначнішим наслідком застосування пропрієтарної ліцензії є те, що кінцевий користувач зобов'язаний прийняти її, бо за законом власником ПЗ є не користувач, а видавець програми. У разі відмови прийняти ліцензію користувач взагалі не може працювати з програмою.
Вільні та відкриті ліцензії не залишають права на конкретну копію програми її видавцеві, а передають найважливіші з них кінцевому користувачу, який і стає власником.
В результаті користувач отримує важливі права, які закон про авторське право, як усталено, дає лише власнику копії. Проте всі авторські права на ПЗ, як і раніше, залишаються у видавця.
Ліцензія Freeware (безкоштовне ПЗ) не потребує виплат правовласнику, не має обмежень щодо функціональності та часу роботи. Може поширювати ПЗ без сирцевого коду та обмеження щодо комерційного використання чи модифікації програми.
Сирцевий код (вихідний код, програмний код, джерельний код, початковий код, текст програми, англійською source code) — будь-який набір інструкцій або вказівок, написаних комп'ютерною мовою програмування і у формі, що її може прочитати і модифікувати людина. Сирцевий код дозволяє програмісту вивчати і змінювати роботу програми найзручнішим для людини способом.
Ліцензія Free software (вільне ПЗ) надає максимальну кількість прав користувачам: користування, поширення, модифікація. Для цього типу ПЗ створюються спеціальні ліцензії для врегулювання прав та обов'язків авторів та користувачів.
GNU General Public License (англійською Універсальна громадська ліцензія GNU) — приклад вільної ліцензії, яка дає користувачу право самому поширювати ПЗ під цією ліцензією, брати участь в його розробці або змінювати іншими способами. Проте, перераховані права зобов'язують користувача ПЗ під GPL підкорятися певним правилам. Наприклад, будь-які зміни програми, зроблені користувачем і поширені далі, потрібно супроводити вихідним кодом цих змін.
Ліцензія Free BSD (англійською Berkeley Software Distribution license, програмна ліцензія университету Берклі) — ліцензійна угода, вперше використана для розповсюдження Unix-подібних операційних систем BSD, чию назву вона і отримала. Пізніше з'явилися версії цієї ліцензії, які мають умовну назву «Ліцензії типу BSD» (англійською BSD-style licenses). У порівнянні з іншими поширеними ліцензіями на вільне ПЗ (наприклад, GNU GPL) ліцензія BSD накладає менше обмежень на користувача. Тому у деякому розумінні використання такої ліцензії ближче до віднесення програми до категорії громадського надбання.
Різниця між безкоштовним та вільним ПЗ полягає у тому, що згідно з ліцензією Freeware користувачі не мають права поширювати програми, дарувати, модифікувати тощо, а згідно з Free software це можливо. Часто, хоча не завжди, вони відрізняються ще й тим, що вільне ПЗ надають разом із сирцевими кодами.
Подамо опис деяких іншомовних термінів щодо ліцензування програмного забезпечення.
Adware — безкоштовні програми, але є носіями реклами, показ якої є обов'язковою умовою.
Donationware (Donateware) — користувачу надають повний функціонал програми та можливість зробити пожертву розробнику. Пожертва не є обов'язковою умовою та не впливає на об'єм наданого функціоналу.
Public domain software — безкоштовне розповсюдження, у тому числі з можливістю модифікації сирцевого коду. Авторське право не зберігається.
Open source — аналогічно попередньому але зі збереженням авторського права. Обов'язкова умова: наявність сирцевого коду. Модифіковане ПЗ поширюється на аналогічних умовах, що й первинний продукт. У власника авторського права є можливість вимагати, щоб сирцевий код розповсюджувався без змін, але в комплекті зі складовими модифікації.
Proprietary software — ПЗ, що є в приватній власності та не відповідає критеріям вільного ПЗ.
Shareware — умовно безкоштовне ПЗ: «спробуй і придбай». Можна безкоштовно користуватися певний період, після чого необхідно придбати повну версію. Може бути методом поширення пропрієтарного ПЗ.
Commercial software — комерційне ПЗ, створене з метою отримання прибутку від використання іншими. Захищене законами. Не надає права на пробну чи обмежену версію. Встановити програму можна лише після повної оплати. Використовують зрідка, бо воно не дає можливості випробувати програму перед придбанням.
Проблеми сумісності програмного забезпечення
Багатоплановість електронної складової та програмного забезпечення підводить нас до проблеми уніфікації чи хоча б відповідності стандартам продуктів, представлених на ринку IT. Якщо проблему сумісності за елементною базою вже майже вирішено, то проблема сумісності програмного забезпечення досі ще є актуальною.
Щодо програмного забезпечення говорять про види сумісності на рівні:
виконуваних файлів;
сирцевих кодів (програма може бути інтерпретована або скомпільована на різних комп'ютерах під різними операційними системами);
форматів файлів даних (програми можуть відрізнятися за інтерфейсом, набором функцій, але працювати з однаковими документами);
мережевої сумісності (здатність програм обмінюватися даними по мережі).
Операційна система є головною частиною системного програмного забезпечення — це програмний комплекс, що забезпечує:
керування ресурсами — злагоджену роботу всіх апаратних засобів комп'ютера;
керування процесами — виконання всіх програм та їх взаємодію з пристроями комп'ютера та даними;
інтерфейс (діалог, обмін інформацією) між користувачем та комп'ютером.
Основні функції операційна системи:
створення середовища виконання і взаємодії прикладних програм;
розподіл (апаратних) ресурсів комп'ютера між прикладними програмами;
надання прикладним програмам засобів для ефективного використання пристроїв та виконання типових операції з введення-виведення даних;
організація зберігання даних пристроями пам'яті;
надання інтерфейсу, за допомогою якого користувачі керуватимуть виконанням прикладних програм та вмістом пристроїв пам'яті;
забезпечення взаємодії комп'ютерів у мережах.
Найвідоміші операційні системи: MS–DOS, MS–Windows, UNIX, GNU/Linux, OS/2, MacOS, iOS.
Операційна система починає працювати одразу після увімкнення комп'ютера. Певну її частину — BIOS — розміщено у мікросхемі сталої пам'яті. Ця частина містить сукупність програм, що після ввімкнення комп'ютера автоматично тестують усі його пристрої та в разі їх справної роботи завантажують в оперативну пам'ять частину операційної системи — програму-завантажувач. Далі вже вона завантажує в оперативну пам'ять комп'ютера потрібні для подальшої роботи модулі операційної системи. Після завершення завантаження ОС керування переходить до командного процесора.
Поки комп'ютер працюватиме, деяка частина операційної системи завжди залишатиметься в ОЗП. Цю частину ОС називають резидентною. За потреби до оперативної пам'яті буде завантаженоінші частини ОС.
Структура операційної системи (складові операційної системи)
Ядро — центральна частина ОС, що забезпечує прикладним програмам координований доступ до ресурсів комп'ютера (процесорного часу, оперативної пам'яті, зовнішніх пристроїв уведення та виведення інформації), перекладаючи їх команди з мови прикладних програм мовою двійкових кодів, яку розуміє комп'ютер.
Драйвери — програми для перекладу вказівок комп'ютера мовою певного пристрою (принтера, сканера, звукової або відеокарти) та навпаки;
Утиліти — допоміжні програми, призначені обслуговувати диски, перевіряти комп'ютер, налаштовувати параметри роботи.
Інтерфейс — правила взаємодії операційної системи та користувача, які визначають зручність роботи.
Класифікація операційних систем:
До другої половини 1990-х років операційні системи створювали лише для комп'ютерів, причому системи для персональних комп'ютерів і для мейнфреймів (надпотужних серверів) істотно відрізнялися за призначенням і принципами роботи. Наприкінці XX століття значно зросли можливості мобільних телефонів, з'явилися кишенькові ПК, комунікатори (кишенькові ПК із засобами мобільного зв'язку) тощо. Для них також було створено операційні системи. Так виник термін «смартфон» — мобільний телефон з операційною системою. Вбудовані системи забезпечують роботу тисяч різноманітних інтелектуальних взаємодіючих систем, таких як касові термінали, телевізійні приставки, цифрові медіа-програвачі, складна споживацька електроніка, кіоски та торгові автомати тощо.
Графічний інтерфейс набув поширення в 1990-х роках, а до того майже всі користувачі комп'ютерів працювали з текстовим інтерфейсом. У ньому команди вводили переважно за допомогою клавіатури, а об'єкти ОС подавали у текстовому вигляді їхніми назвами. У деяких випадках текстовий інтерфейс має переваги над графічним, і тому вважати його лише «історичною спадщиною» не варто. Класичний різновид текстового інтерфейсу — командний рядок, тобто поле, в яке користувач вводить вказівки.
SILK-інтерфейс наближений до звичайного людського спілкування. Під час його використання відбувається звичайна «розмова» людини та комп'ютера. При цьому комп'ютер шукає знайомі для себе вказівки, аналізуючи мову людини та знаходячи в ній ключові фрази. Результати власної роботи він теж перетворює у зрозумілу для людини форму. Цей вид інтерфейсу ґрунтується на основі мовленнєвої (людина подає команди голосом, використовуючи спеціально зарезервовані слова-вказівки, наприклад прокидайся або відкрити) та біометричної технологій (для керування комп'ютером за допомогою цифрової камери зчитують інформацію про вираз обличчя людини, напрямок її погляду, розмір зіниці тощо).
Процес встановлення (інсталяцію) програмного забезпечення на комп'ютер кінцевого користувача виконує:
або менеджер пакунків — особлива програма у складі операційної системи (наприклад, APT в Linux, Windows Installer в Microsoft Windows);
або засіб встановлення — спеціальна програма у складі самого програмного забезпечення.
Більшість програм постачають для продажу та поширення у стисненному вигляді. Для нормальної роботи їх потрібно розпакувати, а необхідні дані правильно розташувати на комп'ютері, враховуючи відмінності між комп'ютерами і налаштуваннями користувача. У процесі встановлення виконують різні тести на відповідність заданим вимогам, а комп'ютер необхідним чином налаштовують для зберігання файлів і даних, необхідних для правильної роботи програми.
Встановлення програмного забезпечення зазвичай включає в себе розташування всіх необхідних програмі файлів у відповідних місцях файлової системи, а також зміну та створення конфігураційних файлів. Менеджери пакунків також виконують контроль залежностей, перевіряючи, чи є в системі необхідні для роботи даної програми пакунки, а в разі успішного встановлення реєструють новий пакунок у переліку наявних.
Деякі комп'ютерні програми написано таким чином, що їх встановлюють простим копіюванням файлів у потрібне місце. Про такі програми кажуть, що вони не вимагають встановлення, їх поширюють переписуванням.
Встановлення (інсталяція) великих програм буває:
Вилучення (деінсталяцію) програм потрібно здійснювати за допомогою системних чи спеціальних програмних засобів. Просте вилучення файлів не призводить до вилучення програми з реєстру встановленого програмного забезпечення.
4. Закріплення вивченого матеріалу
5. Підбиття підсумків уроку
Виставлення оцінок.
6. Домашнє завдання
Вивчити матеріал уроку. Підготуватися до дискусії: «Операційні системи. Windows vs Linux».
Текст упорядкувала Інна Юріївна Горнікова, вчитель спеціалізовної школи № 304 Святошинського району міста Києва, під час виконання випускної роботи на курсах підвищення кваліфікації з 7.10.2013 по 11.10.2013.