Контакти

Російська операційна система чи Windows? Нова російська операційна система для ПК. Російські операційні системи Операційна система Росії

В інтернеті патріотів тролять у стилі: «От ви читаєте це повідомлення на китайському комп'ютері з американськими програмами, це не православно». От якби мати все повністю вітчизняне… Тим більше, що зараз «під цю лавочку» можна запросто виграти великий держконтракт: заради такої справи багато виробників обладнання вже почали випускати його на контрактних заводах серед милих нашому серцю беріз.

Шарлатанов на зразок школяра, який намалював заставку і заявив про створення операційної системи BolgenOS, ми беремо не до уваги, а у витрату - але, виявляється, в Росії повно серйозних розробок.

Не дуже російська ROSA Linux

Ось, наприклад, ROSA Linux (читається не як "троянда", а як "роса", яка вранці на траві). Навряд чи її можна вважати повністю російською, бо це насправді подальші гілки розвитку зарубіжних збірок Mandriva та Red Hat. Версія для домашніх користувачів називається Rosa Fresh; останній білд вийшов у серпні 2016 року.

Перевагою цієї безкоштовної збірки в порівнянні з тією ж Ubuntu є можливість вибору графічного інтерфейсу (KDE або Gnome), наявність драйверів «з коробки» для великої кількості пристроїв, включаючи пропрієтарні (скажімо, відеокарти NVIDIA), та встановленого програмного забезпечення - типу Skype, Java, Flash, Steam, власного всеїдного медіаплеєра тощо, а також зручних засобів для створення точок відновлення.

Робочий стіл операційної системи Rosa 2012LTS.

Astra Linux

Astra Linux - ще одна російська збірка Linux (спочатку створена на базі Debian), розроблена для силовиків та спецслужб. Вона відрізняється найвищим рівнем захисту та сертифікована для роботи зі відомостями, що містять державну таємницю. Для більшого патріотизму всі релізи названі на честь міст-героїв Росії.

Зараз актуальні «Орел» – версія для повсякденних офісних, вибачте, конторських завдань та «Смоленськ» для роботи зі відомостями категорії «Цілком таємно». Готується до виходу «Новоросійськ» – мобільна версія ОС для смартфонів та планшетів з ARM-процесорами.

З технічної точки зору «Астра» відрізняється від інших Linux-систем власною запатентованою системою розмежування доступу, а також має ряд інших функцій захисту даних - наприклад, при видаленні файлу він видаляється повністю і місце, яке займав, заповнюється випадковими маскуючими послідовностями даних (у інших ОС за замовчуванням змінюється лише запис у FAT, і для того, щоб віддалений файл не можна було прочитати посекторним читанням накопичувача, використовують спеціальні утиліти).

Операційна система загальносистемного призначення Astra Linux Common Edition.

ПЗ для спецслужб

«Зоря» - ще одна збірка Linux спеціального призначення (на базі Red Hat), вона використовується виключно в російській армії і існує у вигляді кількох збірок - для робочих станцій, ЦОД, для спеціалізованих комп'ютеризованих комплексів і т.п.

Також існує МСВС – «Мобільна система Збройних Сил» та GosLinux – ОС для Федеральної служби судових приставів (теж на базі Red Hat). За останньою є статистика: вона встановлена ​​на 660 серверів і 16 тис. робочих станцій, при цьому вартість копії в перерахунку на один комп'ютер дорівнювала 1500 рублів. У міру встановлення на більше ПК до кінця 2016 року (тоді вона буде встановлена ​​на половині комп'ютерів ФССП) середня вартість знизиться до 800 рублів. У будь-якому випадку це в кілька разів дешевше за ліцензії на Windows і MS Office.

«Ельбрус»

"Ельбрус" - операційна система для комп'ютерів з російськими процесорами з аналогічною назвою. Оскільки ці процесори, хоч і сумісні з x86, мають власну унікальну архітектуру, вирішили розробити спеціальну ОС - знову ж таки, на ядрі Linux - яка враховує особливості ЦП і максимально ефективно використовує їх переваги.

ВК Монокуб-PC - персональний комп'ютер на базі мікропроцесора Ельбрус-2С + з операційною системою "Ельбрус" / МЦСТ.

ПЗ з нуля

Всі перераховані вище операційні системи, на жаль, не є повністю російськими розробками, оскільки це різні варіації на тему зарубіжного Linux. Однак є у нас і повністю своя ОС під назвою «Фант», розроблена з нуля.

Одна з ключових особливостей "Фантома" - це персистентність, що означає, що програми працюють без зупинки і навіть "не знають" про те, що комп'ютер був вимкнений або перезавантажений - робота триває рівно з того самого моменту. Це чимось схоже на режим «глибокого сну» в інших системах (коли вміст пам'яті записується на диск у вигляді файлів і потім завантажується), але гарантовано працює без збоїв драйверів і програм, і все відбувається автоматично. Навіть якщо раптово знеструмити комп'ютер, дані не пропадуть і після повторного увімкнення все буде так само, як за кілька секунд до вимкнення.

Проблема «Фантома» лише одна: під нього потрібно писати (або портувати з Unix-систем) прикладне ПЗ, а тут виникає проблема курки та яйця: поки не буде хоч якогось проникнення ОС, ніхто не захоче писати під неї програми, а поки що немає програм – не буде проникнення.

Щоб зробити і ОС, і програми одночасно, потрібні величезні інвестиції, яких невелика компанія Digital Zone, автор «Фантома», не має. Тому система існує у вигляді альфа-версії для 32-розрядних процесорів x86 і перспективи її подальшого розвитку дуже туманні.

Власне, програмам не потрібно вміти записувати свій стан у файл, та й взагалі "Фантом" оперує не "файлами", а "об'єктами". За заявою творців ОС, писати програми під неї значно легше та на 30% дешевше.

Маскування під російське ПЗ

Слід згадати ще й про шум, що виник навколо Sailfish OS після того, як наш міністр Микола Никифоров зустрічався з керівниками фінської Jolla. Рік тому Jolla була куплена російським бізнесменом Григорієм Березкіним і навіть виграла конкурс Мінкомзв'язку на імпортозаміщення у сегменті ОС для мобільних пристроїв.

З того часу нічого не сталося, та й нічого російського, крім покупця, у Sailfish поки немає. Тим не менш, ведуться розмови про те, що в Росії в Іннополісі буде розроблятися нова мобільна ОС, націлена на експорт.

Багато ЗМІ вийшли із заголовками, що це створення вітчизняної мобільної операційної системи. Але в інтернеті апріорі немає кордонів, всі продукти мають бути глобальними. Навпаки, нам хотілося б, щоб російські розробники брали участь у створенні продукту, який буде експортно орієнтованим, а в ідеалі стане платформою для країн БРІКС.

Микола Никифоров

міністр зв'язку та масових комунікацій Російської Федерації

І тут є певний логічний трюк: Нікіфоров вважає відкриту операційну систему Sailfish одним із можливих кандидатів на те, щоб стати платформою для подальшого імпортозаміщення у сфері IT. Однак про те, що в Іннополісі розроблятимуть саме Sailfish, нічого не йдеться. Зате йдеться про те, що компанія «Відкрита мобільна платформа», що належить, раптово, Березкіну, лише візьме за основу закордонну Sailfish і доопрацює її для простих російських користувачів. Тобто це не черговий «Лінукс для держсектора», а ОС для масового ринку.

Відкинемо всі ці обтічні формулювання: зрозуміло, що під виглядом російської мобільної ОС нам покажуть саме перелицьовану Sailfish. Вона, у свою чергу, є Linux-подібною спадкоємицею платформ MeeGo і Maemo, які розроблялися в Nokia і були «убиті» Стівеном Елопом, засланим козачком від Microsoft, бо були конкурентами Windows Phone. Один апарат, Nokia N9, встигли випустити.

Під час завантаження сталася помилка.

Як виглядає система Sailfish OS 2.0 для користувачів Jolla.

Sailfish може запускати Android-програми, так що проблем із софтом не буде, втім, користувачу складно пояснити, чому він повинен Android-програми запускати не на Android, а на смартфоні з іншою операційною системою.

Головна перевага Sailfish полягає у відсутності залежності від Google та її сервісів (саме заради цього, наприклад, Samsung розробляла Bada та Tizen). Користувачеві обіцяють трохи магії, як у Apple, а програмістам - простоту створення програм без проблем із фрагментацією. З чуток, на Sailfish вийде Yotaphone 3.

Що зрештою?

У сухому залишку ми маємо ось що: всі «живі» російські ОС насправді перероблені для конкретних завдань зборками Linux. Свої завдання щодо економії держбюджету та забезпечення збереження даних вони виконують. Градус патріотизму підвищують. Сисадмінам та розробникам ПЗ робочі місця дають. Тобто все чудово.

Гадаю, кожен із читачів цієї статті не вважає синонімами слова «Операційна система» і «Windows», т.к. знає щонайменше ще одну або кілька інших систем. Для багатьох це буде Андроїд, ще для значного кола відомі Windows Phone та iOS, трохи менше людей чули про OS X, FreeBSD та Ubuntu. Усі ці операційні системи розробляються західними (переважно американськими) організаціями. На перший погляд, нікуди кинути свій погляд російській людині... а ні. Є й у нас свої майстри.

Ми вже звикли, що інформаційні технології для Росії не є предметом творчості, а предметом пасивного вивчення. Так, ми знаємо антивірус світового рівня від Касперського або зараз кращий розпізнавач тексту FineReader теж від російської компанії. Хтось згадає Dr.Web. Але в загальному контексті це, якщо не крапля, то невелика калюжка у морі, що становить наш комп'ютерний кругозір. Ця ілюзія хибна, т.к. оцінюються не всі активні учасники ІТ-спільноти, а лише ті, хто себе активно просуває через рекламу чи менеджерів із продажу. А хто опиняється за бортом нашого кругозору? Так десятки тисяч вітчизняних розробників різного рівня професіоналізму та різних галузей розв'язуваних завдань.

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

Я вирішив розглянути першу (РОСУ), т.к. припускаю, що вона найзручніша для колишніх користувачів Windows зі всіх мною перепробованих. Точніше: редакцію «для народу» – Fresh (тобто «Свіжа» РОСА).

https://pp.vk.me/c622330/v622330599/4a111/e-lkYhJxA2M.jpg

Головна проблема для користувача нової операційної системи – освоєння нової логіки роботи з комп'ютером (адже РОСА – не клон Windows, а зовсім інша ОС). Наприклад, людина, яка вирішила пересісти на OS X від Apple повинна буде рішуче відкинути звички виндоводу до "гарячих клавіш". Тут у російської операційної системи проблем мінімум: нижня панель нагадує за логікою роботи звичну «Вендову», а пристрій меню (умовно назвемо його «ПУСК») порадує своєю простотою та функціональністю.


https://pp.vk.me/c624419/v624419599/61c93/7xQG0ybJAO4.jpg

Але це лише зовнішня «косметика». Усередині є всі необхідні навіть досить просунутого користувача інструменти: вбудовані програвачі величезної кількості форматів, повноцінний офісний пакет (аналог MS Office), редактори графіки, аудіо та відео, поштовий клієнт, два (!) браузери для любителів з різних таборів (Firefox і Chromium) , клієнт, здатний підключитися до ICQ та QIP, утиліти запису завантажувальних флешок та дисків. Якщо потрібно, довстановлюємо Skype, TeamViewer та інші корисні програми через зручний та лаконічний інсталятор програм (більшість програм ставиться та оновлюється через один цей інструмент без потреби оновлюватися вручну).


https://pp.vk.me/c622330/v622330599/4a11b/dmMw9LEA8S4.jpg

І навіть при всій масивності попередньо встановленого набору програм РОСА примудряється завантажуватися і вимикатися швидше за продукцію редмондської корпорації. А проблема вірусів турбуватиме лише тих, хто їх доцільно встановлює у систему. "Раптом" на комп'ютері вони не можуть з'явитися.

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


https://pp.vk.me/c622330/v622330599/4a125/cm1N-A-A-Ok.jpg

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

Ще однією перевагою російської ОС є активна та доступна російськомовна спільнота

У лекції дано історичний огляд ОС, як зарубіжних, і вітчизняних (ОС ДИСПАК, ОС " Ельбрус " та інших.). Розглянуто основні режими роботи користувачів та завдань у ОС (пакетний, мультипрограмування, поділ часу).

    Вступ

    Історія ОС

    Діалекти UNIX

    Вітчизняні операційні системи

    Особливості операційних систем для комп'ютерів загального призначення (mainframes)

    Розподіл пам'яті в однозадачній ОС із пакетною обробкою завдань

    ОС пакетної обробки за допомогою мультипрограмування

    Режим поділу часу та особливості ОС з режимом поділу часу

    Ключові терміни

    Короткі підсумки

    Набір для практики

    • Теми для курсових робіт, есе

Вступ

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

Історія ОС

У ранніх mainframe-комп'ютерах (1940-1950 рр.), першою з яких був комп'ютер ENIAC (1947 р., США), операційні системи були відсутні. Звернення до пам'яті в цих комп'ютерах здійснювалося за реальними (фізичними) адресами, а звернення до зовнішніх пристроїв (наприклад, пристрою введення з перфокарт або накопичувача на магнітній стрічці) здійснювалося спеціальними командами, також за фізичними адресами. Подібні комп'ютери були дуже громіздкими, кожен із них займав великий зал, в якому користувачі по черзі працювали на комп'ютері, використовуючи такий незручний інтерфейс, як інженерний пульт. Кожен користувач перед відходом "з машини" (як тоді говорили) зупиняв і "обнуляв" її натисканням кнопок на пульті і поступався місцем наступному користувачеві, який вводив свою програму і дані з перфокарт або перфострічки, набирав її початкову адресу тумблерами на пульті і запускав за допомогою спеціальної кнопки. За будь-якого збою або помилки в програмі, в ситуації доводилося розбиратися, вивчаючи комбінації лампочок на пульті, що відтворюють у двійковому вигляді вміст регістрів.

Зрозуміло, що такий спосіб взаємодії з комп'ютером був дуже незручний. Була потрібна хоча б мінімальна автоматизація. І тому у 1950-х – 1960-х гг. - були створені диспетчери (dispatchers)- Попередники ОС, системні програми, що керували проходженням пакета завдань, що вводяться з перфокарт. Наприклад, такий диспетчер(названий ДМ-222) використовувався на ЕОМ М-222 у середині 1970-х рр., у якому студенти мат-хутра, зокрема і автор курсу, пропускали свої студентські завдання. Виглядало це в такий спосіб. Студент писав свою програму (або виправлення до неї – так звану "добивку") на спеціальних бланках і здавав у перфорацію, потім отримував перфокарти та віддавав колоду перфокарт із програмою оператору машинного залу. Через кілька годин він міг розраховувати отримати результати своєї програми – колоду перфокарт назад та роздруківку результатів. У машинному залі оператор вводив чергове завдання із перфокарт. Програма- диспетчеркопіювала образ введеної колоди перфокарт із завданням на стрічку введення, де зберігалися всі образи завдань у хронологічному порядку їх введення, незалежно від необхідних їм ресурсів – часу й обсягу пам'яті. Диспетчерздійснював запуск завдань по черзі, за принципом FIFO (First-In-First-Out)- У порядку надходження. Вибираючи із черги деяке завдання, диспетчеррозміщував його у пам'яті і запускав. Після закінчення завдання (або при його перериванні внаслідок помилки) на принтер видавався роздрук результатів. Потім керування передавалося наступному завданню. Такий режим доступу до комп'ютера був, звичайно, набагато зручнішим, ніж робота з пульта. Недоліки його в тому, що, по-перше, програми пропускалися по черзі (відсутня одночасна обробка кількох завдань), по-друге, ресурси, необхідні для виконання завдання, ніяк не враховувалися, і програма, яка вимагає виконання всього 1 хв., повинна була очікувати завершення великої задачі, що вимагала для виконання, наприклад, п'яти годин, - тільки тому, що остання раніше була введена в систему.

У 1960-х – 1970-х роках. були розроблені класичні операційні системи, які дедалі більше ускладнювалися. Все більш складними ставали їх системи файлів та інші компоненти операційної системи. Найбільш відомі з операційних систем цього періоду: серед зарубіжних – ATLAS, MULTICS, OS IBM/360, серед вітчизняних – ОС ДИСПАК для ЕОМ БЕСМ-6. Для класичних операційних систем були характерні такі основні можливості:

    мультипрограмування (multi-programming) – одночасна обробка кількох завдань;

    пакетна обробка (batch mode) – обробка пакета завдань, введених з перфокарт або терміналів, з урахуванням їх пріоритетів та необхідних ресурсів

    поділ часу (time sharing) – паралельна робота кількох користувачів з терміналів (телетайпів або дисплеїв), які керували проходженням своїх завдань, виконували їх введення в текстових редакторах, компіляцію, виконання та налагодження;

    управління процесами - паралельне (або поперемінне, якщо комп'ютер був однопроцесорним) виконання користувальницьких процесів; можливість запуску паралельного процесу.

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

Перша мобільна ОСбула розроблена в 1970 р. Браяном Керніганом (B. Kernighan) і Деннісом Рітчі (D. Ritchie) у фірмі AT&T і отримала назву UNIX. Навіть у її назві закладено свого роду протиставлення MULTICS (multi - багато, uni – один) – остання, відома своєю ускладненістю. Цією назвою автори наголошували на основній ідеї UNIX – уніфікаціюі спрощенняпредставлення файлів та операцій над ними (у UNIX файл – це послідовність байтів), програм користувача і процесів. Уніфікованим, незалежним від цільової апаратної платформи, був також вихідний код UNIX, який був повністю написаний спеціально розробленою новою мовою Сі (основними авторами Сі, як і UNIX, є Б. Керніган та Д. Рітчі). Використання мови високого рівня розробки UNIX було революційним кроком історія ОС і дозволило, по-перше, значно прискорити і полегшити розробку, по-друге – перенести UNIX багато моделей комп'ютерів (для яких при цьому, зрозуміло, необхідно було розробити компілятор з мови Сі). Вперше система UNIX була використана в 1970 р. на мінікомп'ютері PDP-10. Комп'ютери фірми PDP зразка початку 1970-х. прийнято відносити до класу мінікомп'ютерів. Хоча ця назва з сучасної точки зору не цілком правомірна: такий комп'ютер займав... дві невеликі шафи, порівняно з mainframe-комп'ютером зразка 1960-х рр., що займав цілу залу. Обсяг оперативної пам'яті мінікомп'ютерів становив лише близько 32 кілобайт (!). Однак на них успішно працювала ОС UNIX (були й інші ОС - наприклад, RSX-11), був компілятор з мови Паскаль, була реалізована зручна система файлів та програма для роботи з ними, були доступні математичні бібліотеки програм.

На початку 1980-х з'явилися персональні комп'ютери. p align="justify"> Операційні системи для них фактично повторили у своєму розвитку операційні системи для комп'ютерів загального призначення: у них були використані аналогічні ідеї та методи. Однак перші персональні комп'ютери були менш потужними, ніж mainframes, як за обсягом пам'яті, так і за швидкодією та розрядністю мікропроцесора. Перший поширений мікропроцесор фірми Intel був 8-розрядним, і для нього було розроблено також 8-розрядну операційну систему CP/M. У 1975 р. була створена фірма Microsoft і її першою розробкою була 16-розрядна операційна система MS DOS для персональних комп'ютерів з процесорами Intel 8086 (або, коротко, x86). У командній мові MS-DOS відчувається явний вплив UNIX, проте MS-DOS надає набагато менші можливості командної мови.

На початку 1980-х років. фірма Apple випустила персональні комп'ютери Lisa та Macintosh з операційною системою MacOS. Її характерною рисою була реалізація зручного графічного інтерфейсу користувача (GUI)у вигляді вікон, меню, "іконок" та багатьох інших елементів GUI, до яких ми з Вами нині так звикли. MacOS стала першою ОС з розвиненою підтримкою GUI (для порівняння, MS-DOS надавала можливості роботи безпосередньо командною мовою).

Наприкінці 1980-х – на початку 1990-х рр., під впливом MacOS, Microsoft розробила графічну оболонку Windows над операційною системою MS-DOS. Перша версія Windows, таким чином, ще не була операційною системою; вона запускалася командою winіз командної мови MS-DOS. Однак багато сучасних рис GUI, характерного для Windows, що стали "рідними" для користувачів Windows, в ній вже були присутні. Потім було випущено Windows 3.x і Windows for Workgroups (вже операційні системи), в 1995 р. – Windows 95 (з розвиненими мультимедійними можливостями, великим набором вбудованих драйверів для різних пристроїв та підтримкою механізму Plug-and-Play підключення нового пристрою без зупинки комп'ютера) і Windows NT з розвиненими мережевими можливостями та підвищеною надійністю. Саме Windows NT стала основою подальшого розвитку Windows. В даний час найбільш популярними моделями Windows є Windows XP (підтримка якої фірмою Microsoft вже завершується - система випущена в 2001), Windows 2003 Server, Windows Vista, Windows 2008 Server і Windows 7.

На початку 1990-х років. з'явилася перша версія ОС Linux (ОС типу UNIX з відкритими вихідними кодами ядра), яка поступово набула значної популярності, але, головним чином, використовується на серверах. Більшість клієнтів (користувачів) у світі воліють на своїх комп'ютерах Windows або MacOS (зауважимо, що, наприклад, у США та Канаді комп'ютери Macintosh популярніші, ніж Windows-машини з процесорами Intel або їх аналогами).

Не будемо також забувати, що у відповідь на таке, на перший погляд, просте питання: "Яка ОС найпопулярніша у світі?" навіть співробітники Microsoft не відповідають "Windows". Справа в тому, що найбільш популярними у світі комп'ютерними пристроями є не настільні або портативні комп'ютери, а більш дешеві та компактні мобільні телефони, для яких поки що першість утримує спеціалізована ОС сімейства Symbian, яка, зокрема, використовується у більшості мобільних телефонів найбільшої фірми Nokia. Операційну систему Symbian активно наздоганяє на ринку ОС для мобільних пристроїв нова ОС Google Android. Отже, операційні системи сімейства Windows за своєю поширеністю виявляються лише на другому місці.

Діалекти UNIX

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

    Berkeley Software Distribution (BSD), в даний час – FreeBSD (University of Berkeley) – один з найвідоміших діалектів UNIX, розроблений в Університеті Берклі, США. У ньому вперше було реалізовано мережеві сокети. Саме цей діалект було покладено основою першої версії ОС Solaris фірми Sun (Solaris 1.x) під час її створення 1982 р. Один із авторів даного діалекту – Білл Джой (Bill Joy), одне із чотирьох легендарних творців фірми Sun.

    System V Release 4 (SVR4) – діалект UNIX, розроблений у фірмі AT&T. Він найбільш характерні розширені можливості паралельного многопоточного програмування (multi-threading). Цей діалект було покладено основою другої версії ОС Solaris (Solaris 2.x) фірми Sun на початку 1990-х.

    Linux (RedHat, SuSE, Mandrake, Caldera, Debian, Fedora та ін.) – ОС типу UNIX з ядром, що вільно розповсюджується з вихідними кодами. Перша версія Linux була розроблена на початку 1990-х років. В даний час діалекти Linux активно використовуються як серверні ОС(ОС, що керують роботою різних серверів), а також як основа для розробки ОС для мобільних пристроїв.

    Solaris (Sun Microsystems, нині – Oracle/Sun) – один із найбільш відомих та розвинених діалектів UNIX. Має зручну графічну оболонку, розвинені засоби паралелізму та синхронізації процесів, зручні мережеві можливості (зокрема класичну мережеву файлову систему NFS), ряд нових оригінальних файлових систем (зокрема, ZFS – файлова система з великим розміром файлів та можливістю криптування інформації). В даний час розповсюджується ОС Solaris 10.

    IRIX (Silicon Graphics) – діалект UNIX, розроблений фірмою Silicon Graphics (SGI), США широко відомим виробником графічних робочих станцій.

    HP-UX (Hewlett-Packard) – діалект UNIX, розроблений та використовуваний однією з найбільших "акул" у світі ІТ – фірмою Hewlett-Packard.

    Digital UNIX (DEC) – діалект UNIX, розроблений на початку – середині 1990-х років. фірмою Digital Equipment Corporation (DEC), згодом придбаною фірмою Compaq. Перша версія UNIX, що підтримувала 64-розрядні процесори.

Вітчизняні операційні системи

При аналізі розвитку області ІТ слід пам'ятати особливі умови, у яких розвивалися ці розробки як і СРСР (Росії), і у США, починаючи з 1950-х гг. - "холодна війна" та "залізна завіса". Внаслідок цього, всі ці розробки, як в галузі апаратури, так і в галузі програмного забезпечення, були суворо засекречені (на думку автора, в СРСР – навіть більш строго, ніж у США, тому що про роботи американських фахівців ми все ж таки мали можливість дізнаватися із журналів). Така ситуація призводила до того, що аналогічні ідеї часом виникали і реалізовувалися по обидва боки "залізної завіси" приблизно в той самий час, за майже повної відсутності інформації про роботи один одного. Проте в цьому були і свого роду позитивні сторони: на ці роботи виділялися значні кошти урядом та галузевими міністерствами, на ці кошти створювалися та розвивалися дуже сильні команди розробників (насамперед – у галузі апаратури, операційних систем та компіляторів). Наприкінці 1980-х – на початку 1990-х рр., у відомий перехідний період у СРСР та Росії, коли починали створюватися групи для роботи з outsourcing – проектам, фінансовані фірмами США, американські фахівці були просто вражені, виявивши в Росії найсильніші дослідницькі та промислові групи у сфері ІТ, які пропонують і реалізують масу своїх ідей, що у курсі нових розробок, а своїм теоретичним рівнем, розробками у сфері структур даних, і ефективних алгоритмів часом випереджали найкращі американські команди. Автору цих рядків пощастило стати керівником однієї з таких груп, яка працювала протягом багатьох років із фірмою Sun у стінах математико-механічного факультету СПбДУ. Всі ці тенденції істотно вплинули на розробку апаратури та операційних систем. Вітчизняні розробники, майже нічого не знаючи про аналогічні роботи американських колег, створювали свої оригінальні системи, у тому числі – ОС. Наприклад, ідея багатопоточності (multi-threading) була реалізована в ОС "Ельбрус" ще наприкінці 1970-х рр., а популярних зарубіжних ОС (UNIX, Solaris, Windows NT) багатопоточність виникла лише наприкінці 1980-х – початку 1990-х гг. На жаль, мало місце і суттєве відставання радянських і російських ІТ-фахівців від американців – перш за все, у галузі розробки елементної бази та технології виробництва комп'ютерів, а також у галузі графічних інтерфейсів (GUI).

Серед передових оригінальних вітчизняних розробок у галузі комп'ютерної апаратури та ОС 1960-х – 1970-х рр. слід виділити насамперед ЕОМ БЭСМ-6, її операційні системи: ОС ДИСПАК, ОС ДІАПАК, ОС ІПМ та її системне та прикладне програмне забезпечення. Розробником БЕСМ-6, ОС ДИСПАК та ОС ДИАПАК був Інститут точної механіки та обчислювальної техніки АН СРСР під керівництвом академіка Сергія Олексійовича Лебедєва, засновника всієї нашої вітчизняної обчислювальної техніки. Розробник ОС ІПМ - Інститут прикладної математики АН СРСР. ЕОМ БЭСМ-6 та її програмне забезпечення слід визнати унікальними. У їх розвитку брали участь багато академічних та університетських колективів не тільки СРСР, а й зарубіжних країн - досить згадати такі системи, як АЛГОЛ-ГДР - реалізацію розширення Алгола-60 з розвиненими математичними бібліотеками, виконану нашими колегами з Німеччини, а також реалізацію Паскаля для БЕСМ -6, розроблену фахівцями з Польської Академії наук. Операційні системи для БЭСМ-6 підтримували пакетний (з урахуванням пріоритетів та ресурсів завдань) та діалоговий режими взаємодії з комп'ютером, сторінкову організацію віртуальної пам'яті, роботу із зовнішніми пристроями та телекомунікаційними каналами, роботу в локальних мережах. До кожної БЭСМ-6 були підключені десятки терміналів, які працювали під управлінням діалогових систем ДИМОН, ДЖИН та ін. Роботу БЭСМ-6 та її ОС відрізняла висока надійність. Керівник розробки ОС ДИСПАК – В.Ф. Тюрін.

Інший передовий вітчизняної розробки 1970-х – 1980-х гг. була розробка багатопроцесорних обчислювальних комплексів (МВК) "Ельбрус-1" та "Ельбрус-2" . У розробці програмного забезпечення системи "Ельбрус" автор курсу зі своєю командою брав активну участь упродовж 15 років. Ідейним натхненником проекту "Ельбрус" став С.А. Лебедєв, потім ним керували академік Всеволод Сергійович Бурцев, а після нього – чл.-кор. АН СРСР Борис Арташесович Бабаян. Слід визнати, що "Ельбрус" мав зарубіжні прототипи і задовго до його появи були написані академічні зарубіжні роботи, які заклали наукові основи подібних комп'ютерних архітектур, наприклад, . Комерційним прототипом "Ельбруса" була відома серія комп'ютерів фірми Burroughs (США): B5000/B5500/B6700/B7700. Однак розробникам "Ельбруса" та його операційної системи вдалося запропонувати та реалізувати цілу низку власних оригінальних ідей та методів. Основними принципами "Ельбрусу", як і його попередників, були: тегова архітектура(кожне слово пам'яті, крім даних, містило тег -код типу даних, що зберігаються в цьому слові, за яким апаратура контролювала правильність виконання операції), динамізмі апаратна підтримка типових (часом дуже складних) послідовностей дій, що використовуються при реалізації мов високого рівня - наприклад, вхід у процедуру за вказівником на неї, з установкою дисплей-регістрів, що посилаються на доступні процедури області локальних даних. ОС "Ельбрус" підтримувала створення процесів та операції над ними, аналогічні тим, які згодом у зарубіжних розробках були названі багатопоточністю (multi-threading);була реалізована математична(Віртуальна) пам'ять з підтримкою сторінкового розподілу віртуальної пам'яті (на диску) та сегментного розподілу фізичної (оперативної) пам'яті. Динамізм виражався в тому, що відсутня статична лінковка; всі програми та модулі завантажувалися в пам'ять лише динамічно, при першому дзвінку. Також динамічно, при першому запиті, за перериванням, виділявся кожен масив математичної пам'яті. Такі принципи були для свого часу передовими, використання тегів значно підвищило надійність. Однак, з сучасної точки зору, ідеологію "Ельбруса", мабуть, не можна вважати гнучкою та ефективною, оскільки всі апаратні операції та відповідні дії ОС були реалізовані в загальному вигляді, і практично була відсутня будь-яка можливість оптимізації, наприклад, для більш швидкого виклику процедури у разі відсутності необхідності звернення до її аргументів, швидкого доступу до статичної області пам'яті і т.д. Докладніше принципи "Ельбрусу" описані в монографії .

Були й інші цікаві вітчизняні розробки нових архітектур комп'ютерів та його операційних систем, передусім - оригінальні спеціалізовані комп'ютери щодо різноманітних застосувань та його операційні системи (переважно, за своїм класом і призначенням, вони були системами реального часу).

Однак на початку 1970-х років у розвитку вітчизняної обчислювальної техніки та її системного програмного забезпечення розпочався новий, несподіваний для більшості користувачів та фахівців етап. Уряд СРСР ухвалив безпрецедентне рішення про створення, як основну на досить довгий період часу (як спочатку планувалося, на 20-30 років, що виявилося утопією), вітчизняної серії - Єдиної Системи ЕОМ (ЄС ЕОМ)- шляхом копіювання американських комп'ютерів серії IBM 360. Відповідно, все базове системне програмне забезпечення, у тому числі ОС, також було адаптовано до використання в СРСР (або використовувалося в оригінальному вигляді - з повідомленнями англійською мовою і т.д.). Це рішення викликало великі проблеми із фінансуванням у розробників вітчизняних архітектур комп'ютерів. Це також викликало великі складнощі у користувачів та розробників програмного забезпечення, оскільки далеко не всі добре володіли англійською мовою (нині в цьому останньому відношенні ситуація набагато краща). З'явилися, наприклад, системи-обертки, що забезпечують російськомовний інтерфейс: з їх допомогою всі завдання для ЄС писалися з використанням російськомовної мнемоніки, потім конвертувалися в англомовний Job Control Language (мова управління завданнями IBM 360), а всі повідомлення, що видаються як результати, перекладалися на російську мову. Це було цікавим підходом, але не прижилося. Документація по IBM 360 поступово була перекладена російською мовою, з'явилася російськомовна довідкова та навчальна література ЄС ЕОМ. На жаль, вітчизняні аналоги апаратури IBM 360 – машини серії ЄС ЕОМ – виявилися набагато менш надійними, ніж їхні прототипи. Протягом кількох років було ухвалено ще одне урядове рішення - про аналогічне копіювання американських мінікомп'ютерів серій PDP 10 і PDP 11, під загальною назвою "Система Міні-ЕОМ" (СМ ЕОМ). Було випущено комп'ютери цієї серії СМ-1, СМ-2, СМ-3 та СМ-4. Були й інші аналогічні роботи з копіювання зарубіжних архітектур комп'ютерів та випуску вітчизняних аналогів. Фактично, можна сказати, що, завдяки подібному підходу, термін використання зарубіжних ОЗ у СРСР і Росії був продовжений щонайменше ніж 15-20 років, що просто безпрецедентно. Копіювання машин IBM 360 і PDP, з одного боку, дало можливість радянським програмістам освоїти нові розвинуті операційні системи, мови програмування, бібліотеки програм, з іншого – відкинуло нашу вітчизняну обчислювальну техніку ще далі. Один із класиків комп'ютерної науки, професор Едсгер Дейкстра (E. Dijkstra) у 1977 р. на науковому семінарі в Ленінграді в АН СРСР не без іронії зауважив, що "рішення росіян про копіювання IBM-360 можна вважати серйозною перемогою США в холодній війні".

Зрозуміло, що історія вітчизняних ОЗ на цьому не закінчилася. Наприклад, в даний час ведеться розробка вітчизняної операційної системи, що вільно розповсюджується, на базі Linux. Серед вітчизняних програмістів багато хто є фахівцями дуже високого рівня з операційних систем.

Особливості операційних систем для комп'ютерів загального призначення (mainframes)

Пакетний режимБільш докладний розгляд операційних систем почнемо з особливостей операційної системи для основних frames.

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

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

Розподіл пам'яті в однозадачній ОС із пакетною обробкою завдань

Мал. 2.1.Розподіл пам'яті у простій системі пакетної обробки

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

ОС пакетної обробки за допомогою мультипрограмування

Розвиненіші операційні системи підтримують режим мультипрограмування -одночасної обробки та розміщення в пам'яті відразу кількох завдань користувача. Розподіл пам'яті в такій системі зображено на Мал. 2.2.

Мал. 2.2.Розподіл пам'яті в системі пакетної обробки за допомогою мультипрограмування

У такій системі ОС займає, як і раніше, суміжну область пам'яті за меншими адресами, проте слідом за областю ОС розміщуються кілька суміжних областей пам'яті, що займаються програмами користувача. Їх кількість та розміри можуть змінюватися.

Особливості ОС із підтримкою мультипрограмування такі.

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

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

Планування завантаження процесора (CPU scheduling)– реалізація в ОС алгоритмів вибору чергового завдання із набору завантажених у пам'ять завдань та виділення кванта часу центрального процесора черговому обраному завданню. На відміну від однозадачного режиму, у режимі мультипрограмування операційна система, таким чином, у певні моменти часу має зробити вибір, яке із кількох завантажених у пам'ять завдань запустити. Алгоритми планування та диспетчеризації процесів докладно розглянуті нижче у цьому курсі.

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

Режим поділу часу та особливості ОС з режимом поділу часу

Коли у складі комп'ютерних систем з'явилися термінали (спочатку телетайпи, потім дисплеї) виникла необхідність реалізації в ОС режиму розподілу часу (time sharing)- Можливості одночасної роботи користувачів зі своїми завданнями з терміналів, введення завдань у систему, їх запуску (за наявності вільного процесора), управління завданнями з терміналу, їх припинення, налагодження, візуалізації на терміналі їх результатів. Розглянемо особливості ОС із режимом поділу часу.

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

Відкачування та підкачування (swapping) -завантаження завдань із диска в пам'ять та їх вивантаження із пам'яті на диск. У системі з поділом часу можлива ситуація, коли будь-яке завдання, кероване з терміналу, неактивне (наприклад, виконує введення-виведення, або система чекає відповіді від користувача, у якого перерва в роботі). У цьому випадку ОС може ухвалити рішення про тимчасову вивантаження (swap out)образу пам'яті завдання з оперативної пам'яті на диск з метою звільнення пам'яті для інших завдань. При повторній активізації завдання воно (за можливості) знову завантажується на згадку ( swapped in). Подібна стратегія називається відкачуванням та підкачуванням.

Підтримка діалогової взаємодії між користувачем та системою. Коли ОС завершує виконання команди користувача, вона виконує пошук наступного керуючого оператора (control statement),введеного з клавіатури користувача.

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

Слід враховувати, що в ОС з поділом часу обробляються як пакетні, так і інтерактивні (діалогові) завдання, тому система повинна забезпечувати їхню диспетчеризацію – переключення в потрібний момент з діалогового завдання на пакетне або з одного діалогового (пакетного) завдання на інше.

Режим поділу часу, поряд із пакетним режимом, був основним в операційних системах 1960-х – 1970-х.

Були й інші цікаві вітчизняні розробки нових архітектур комп'ютерівта їх операційних систем, перш за все - оригінальні спеціалізовані комп'ютери для різних застосувань та їх операційні системи (в основному, за своїм класом та призначенням, вони були системами реального часу).

Однак на початку 1970-х років у розвитку вітчизняної обчислювальної техніки та її системного програмного забезпечення розпочався новий, несподіваний для більшості користувачів та фахівців етап. Уряд СРСР ухвалив безпрецедентне рішення про створення, як основну на досить довгий період часу (як спочатку планувалося, на 20-30 років, що виявилося утопією), вітчизняної серії - Єдиної Системи ЕОМ (ЄС ЕОМ)- шляхом копіювання американських комп'ютерів серії IBM 360. Відповідно все базове системне програмне забезпечення, зокрема і ОС, також адаптовано до використання у СРСР (чи використовувалося в оригінальному вигляді – з повідомленнями англійською мовою тощо.). Це рішення викликало великі проблеми з фінансуванням у розробників вітчизняних архітектур комп'ютерів. Це також викликало великі складнощі у користувачів та розробників програмного забезпечення, оскільки далеко не всі добре володіли англійською мовою (нині в цьому останньому відношенні ситуація набагато краща). З'явилися, наприклад, системи-обгортки, що забезпечують російськомовний інтерфейс: за допомогою всі завдання для ЄС писалися з використанням російськомовної мнемоніки, потім конвертувалися в англомовний Job Control Language ( мова управління завданнями IBM 360), а всі повідомлення, що видаються як результати, перекладалися російською мовою. Це було цікавим підходом, але не прижилося. Документація по IBM 360 поступово була перекладена російською мовою, з'явилася російськомовна довідкова та навчальна література ЄС ЕОМ. На жаль, вітчизняні аналоги апаратури IBM 360 – машини серії ЄС ЕОМ – виявилися набагато менш надійними, ніж їхні прототипи. Протягом декількох років було прийнято ще одне урядове рішення - про аналогічне копіювання американських мінікомп'ютерів серій PDP 10 і PDP 11, під загальною назвою "Система Міні-ЕОМ" (СМ ЕОМ). Було випущено комп'ютери цієї серії СМ-1, СМ-2, СМ-3 та СМ-4. Були й інші аналогічні роботи з копіювання зарубіжних архітектур комп'ютерівта випуску на цій основі вітчизняних аналогів. Фактично, можна сказати, що, завдяки подібному підходу, термін використання зарубіжних ОЗ у СРСР і Росії був продовжений щонайменше ніж 15-20 років, що просто безпрецедентно. Копіювання машин IBM 360 і PDP, з одного боку, дало змогу радянським програмістам освоїти нові розвинуті операційні системи, мови програмування, бібліотеки програм, з іншого – відкинуло нашу по-батьківському обчислювальну техніку ще далі тому. Один із класиків комп'ютерної науки, професор Едсгер Дейкстра (E. Dijkstra) у 1977 р. на науковому семінарі в Ленінграді в АН СРСР не без іронії зауважив, що "рішення росіян про копіювання



Сподобалася стаття? Поділіться їй