Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
EOM.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
712.41 Кб
Скачать

Операційна система Unix

Операційна система Unix була створена в Bell Telephone Laboratories . З короткою історією її створення можна ознайомитися тут . Unix - багатозадачна операційна система, здатна забезпечити одночасну роботу дуже великого кількість користувачів. Ядро ОС Unix написано на мові високого рівня C і має тільки близько 10 відсотків коду на асемблері. Це дозволяє за лічені місяці переносити ОС Unix на інші апаратні платформи і досить легко вносити в неї серйозні зміни і доповнення. UNIX є першою дійсно переносимої операційною системою. У численні існуючі версії UNIX постійно вносяться зміни. З одного боку, це розширює можливості системи, робить її могутніше і надійніше, з іншого - веде до появи відмінностей між існуючими версіями.У зв'язку з цим виникає необхідність стандартизації різних властивостей системи. Наявність стандартів полегшує переносимість додатків між різними версіями UNIX і захищає як користувачів, так і виробників програмного забезпечення. Тому в 80-х роках розроблено ряд стандартів, що роблять вплив на розвиток UNIX. Зараз існують десятки операційних систем, які можна об'єднати під загальною назвою UNIX. В основному, це комерційні версії, випущені виробниками апаратних платформ для комп'ютерів свого виробництва. Причини популярності UNIX:

Код системи написаний на мові високого рівня C, що зробило її простою для розуміння, зміни та перенесення на інші платформи. Можна сміливо сказати, що UNIX є однією з найбільш відкритих систем.

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

Наявність стандартів. Незважаючи на різноманітність версій UNIX, основою всього сімейства є принципово однакова архітектура і ряд стандартних інтерфейсів. Для адміністратора перехід на іншу версію системи не складе великої праці, а для користувачів він може і зовсім виявитися непомітним.

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

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

Дуже велика кількість додатків, у тому числі вільно розповсюджуваних, починаючи від найпростіших текстових редакторів і закінчуючи потужними системами керування базами даних. (За матеріалами посібника "ОС UNIX", http://base1.spiiras.nw.ru/univer/unix)   

Операційна система Linux

Початок створенню системи Linux покладено в 1991 р. фінським студентом Линусом Торвальдсом (Linus Torvalds). У вересні 1991 року він поширив по e-mail перший прототип своєї операційної системи, і закликав відгукнутися на його роботу всіх, кому вона подобається чи ні. З цього моменту багато програмісти стали підтримувати Linux, додаючи драйвери пристроїв, розробляючи різні просунуті програми та ін Атмосфера роботи ентузіастів над корисним проектом, а також вільне розповсюдження і використання вихідних текстів стали основою феноменуLinux. Наразі Linux - дуже потужна система, але саме чудове те, що вона безкоштовна (free).

        Лінус Торвальдс        з символом Linux          - "пінгвіном"

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

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

Неважко помітити, що "висхідна" розробка характеризує так зване дослідне програмування, коли система будується навколо ключових компонентів і програм, які створюються на ранніх стадіях проекту, а потім постійно модифікуються. Відсутність чіткого плану, мінімальне управління проектом, велике число сторонніх територіально віддалених розробників, вільний обмін ідеями і кодами - все це атрибути нового програмування. Про особливості дослідницького програмування написано чимало статей. Так, швейцарські професори А.Кіральф, К.Чен і Й.Нівергельт виділили наступні важливі моменти:

 розробник ясно уявляє напрямок пошуку, але не знає заздалегідь, як далеко він зможе просунутися до мети;

 немає можливості передбачити обсяг ресурсів для досягнення того чи іншого результату;

 розробка не піддається детальному плануванню, вона ведеться методом проб і помилок;

 такі роботи пов'язані з конкретними виконавцями і відображають їх особистісні якості.

101. Що таке транслятор, компілятор, інтерпретатор?

Транслятор (англ. translator - перекладач) - це програма-перекладач. Вона перетворює програму, написану на одній з мов високого рівня, в програму, що складається з машинних команд.

Транслятори реалізуються у вигляді компіляторів або інтерпретаторів. З точки зору виконання роботи компілятор і інтерпретатор істотно розрізняються.

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

Інтерпретатор (англ. interpreter - тлумач, усний перекладач) перекладає і виконує програму рядок за рядком .

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

Відкомпілювалися програми працюють швидше, але інтерпретовані простіше виправляти і змінювати.

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

З іншого боку, Бейсік створювалася як мова для початківців програмістів, для яких порядкове виконання програми має незаперечні переваги.

Іноді для однієї мови є й компілятор , і інтерпретатор . У цьому випадку для розробки і тестування програми можна скористатися інтерпретатором, а потім відкомпілювати налагоджену програму, щоб підвищити швидкість її виконання.

102. Що таке системи програмування?

Система програмування - це система для розробки нових програм на конкретній мові програмування.

Сучасні системи програмування зазвичай надають користувачам потужні та зручні засоби розробки програм. До них входять:

  • компілятор або інтерпретатор ;

  • інтегрована середовище розробки;

  • засоби створення і редагування текстів програм;

  • обширні бібліотеки стандартних програм і функцій;

  • налагоджувальні програми , тобто програми, які допомагають знаходити й усувати помилки в програмі;

  • "Дружня" до користувача діалогова середу;

  • багатовіконний режим роботи;

  • потужні графічні бібліотеки; утиліти для роботи з бібліотеками

  • вбудований асемблер ;

  • вбудована довідкова служба;

  • інші специфічні особливості.

Популярні системи програмування - Turbo Basic , Quick Basic , Turbo Pascal , Turbo C .

Останнім часом набули поширення системи програмування, орієнтовані на створення Windows-додатків :

                       Borland Delphi 3.0

  • пакет Borland Delphi (Делфі) - блискучий спадкоємець сімейства компіляторів Borland Pascal, що надає якісні і дуже зручні засоби візуальної розробки. Його виключно швидкий компілятор дозволяє ефективно і швидко вирішувати практично будь-які завдання прикладного програмування.

  • пакет Microsoft Visual Basic - зручний і популярний інструмент для створення Windows-програм з використанням візуальних засобів. Містить інструментарій для створення діаграм і презентацій .

  • пакет Borland C + + - одне з найпоширеніших засобів для розробки DOS і Windows додатків.

Нижче для ілюстрації наведено на мовах Бейсік, Паскаль і Сі програми вирішення однієї і тієї ж простої задачі - обчислення суми S елементів одновимірного масиву A = (a 1 , a 2 , ..., A N ).

      Мова Бейсік (BASIC - Beginners All-purpose Symbolic Instruction Code - універсальний символічний код для початківців) був створений в 1965 р. Дж. Кемені і Т.Курцем як мову, що полегшує написання простих програм. Cейчас все частіше пишуть Basic замість BASIC, надаючи іншу трактування назвою: Basic - основний, базовий.        Існує багато різних версій Бейсіка - від дуже простих до вдосконалених, містять безліч додаткових мовних конструкцій. Найбільше поширення мають наступні версії: QuickBasic (QBasic) 4.5 для DOS і Visual Basic 3.0-6.0 для Windows. QuickBasic 4.5 фірми Microsoft - це дуже простий, але в той же час ефективний мову, успадкував від раннього Бейсіка всі його достоїнства, але позбавився від всіх його недоліків і ввібрав цілий ряд передових ідей початку 90-х років.Ще QuickBasic дуже привабливий своєю середовищем програмування. Одна з удач - це використання своєрідного режиму роботи. Для швидкої роботи в середовищі використовується режим інтерпретатора, а для остаточного перекладу налагоджених програм на машинну мову використовується компілятор. Із QBasic компілятор виключений.QBasic входить в мінімальний комплект поставки програмного забезпечення комп'ютера. Бейсік дуже популярна мова програмування.       

Програма на Бейсіку   INPUT "N ="; N: DIM A (N)  FOR I = 1 TO N        PRINT "A ("; I; ") =";        INPUT A (I)  NEXT I  S = 0  FOR I = 1 TO N        S = S + A (I)  NEXT I  PRINT "Сума ="; S  END   

    Вікно середовища програмування Quick Basic

Програма на Паскалі   Program Summa;     Type Mas = Array [1 .. 100] of Real;    Var A: Mas;            i, n: Integer;            S: Real;  BEGIN      Write ('n ='); ReadLn (n);      For i: = 1 To N DO          Begin            Write ('A [', i, '] =');            ReadLn (A [i]);          end;     S: = 0;     For i: = 1 To N DO           S: = S + A [i];    WriteLn ('S =', S: 8:2); END.

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

 

    Мова Сі розроблений Деннісом Рітчі в 1972 р. як мову, придатний для програмування нової операційної системи UNIX.

Операційні системи заради підвищення швидкості роботи традиційно писалися на мові низького рівня - асемблері, але мова Сі настільки добре зарекомендував себе, що на ньому було написано більше 90% всього коду ОС UNIX. Мова СІ знайшов популярність як так звана мова середнього рівня, в якому зручність, стислість і мобільність мов високого рівня поєднуються з можливістю безпосереднього доступу до апаратури комп'ютера, що зазвичай досягаються тільки при програмуванні на мові Асемблера.

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

Програма на СІ  # include <stdio.h>  # Include <conio.h>  Main ()  {   float a [100], s; int i, n;  clrscr (); printf ("n =");  scanf ("% i ", & n);  for (i = 1; i <= n; i + +) {       printf ("a [% i] =", i);       scanf ("% f", & a [i]);}  s = 0;  for (i = 1; i <= n; i + +)       s = s + a [i];  printf ("s =% f \ n", s);  return 0;  }

103. Інструментальне програмне забезпечення.

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

За своїм призначенням вони близькі системам програмування. До інструментальних програмами, наприклад, відносяться:

  • редактори;

  • засоби компонування програм;

  • налагоджувальні програми, тобто програми, які допомагають знаходити й усувати помилки в програмі;

  • допоміжні програми, що реалізують часто використовувані системні дії;

  • графічні пакети програм і т.п.

Інструментальні програмні засоби можуть надати допомогу на всіх стадіях розробки ПЗ.

104. Текстові редактори.

Текстовий редактор - це програма, використовувана спеціально для введення і редагування текстових даних.

Цими даними можуть бути програма або який-небудь документ або ж книга. Редагований текст виводиться на екран, і користувач може в діалоговому режимі вносити в нього свої зміни.

Текстові редактори можуть забезпечувати виконання різноманітних функцій, а саме:

  • редагування рядків тексту;

  • можливість використання різних шрифтів символів;

  • копіювання і перенесення частини тексту з одного місця на інше або з одного документа в інший;

  • контекстний пошук і заміна частин тексту;

  • завдання довільних міжрядкових проміжків;

  • автоматичне перенесення слів на новий рядок;

  • автоматична нумерацію сторінок;

  • обробка та нумерація виносок;

  • вирівнювання країв абзацу;

  • створення таблиць і побудова діаграм;

  • перевірка правопису слів і підбір синонімів;

  • побудова змістів і предметних покажчиків;

  • роздруківка підготовленого тексту на принтері в потрібному числі примірників і т.п.

Можливості текстових редакторів - від програм, призначених для підготовки невеликих документів простої структури, до програм для набору, оформлення і повної підготовки до типографського видання книг і журналів (видавничі системи).

              Вікно редактора Microsoft Word      

Найбільш відомий текстовий редактор - Microsoft Word .

Повнофункціональні видавничі системи - Microsoft Publisher , Corel Ventura і Adobe PageMaker . Видавничі системи незамінні для комп'ютерної верстки і графіки. Значно полегшують роботу з багатосторінковими документами, мають можливості автоматичної розбивки тексту на сторінки, розстановки номерів сторінок, створення заголовків і т.д. Створення макетів будь-яких видань - від рекламних листків до багатосторінкових книжок і журналів - стає дуже простим, навіть для новачків.

105. Графічний редактор.

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

 

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

Деякі редактори дозволяють одержувати зображення тривимірних об'єктів, їх перетинів, розворотів, каркасних моделей і т.п.

Користується популярністю Corel DRAW! - потужний графічний редактор з функціями створення публікацій, забезпечений інструментами для редагування графіки і тривимірного моделювання.

106. Системи ділової і наукової графіки.

Системи ділової графіки дають можливість виводити на екран різні види графіків і діаграм:> гістограми; кругові і секторні діаграми і т.д.

Ці системи дозволяють наочно представляти на екрані різні дані і залежності.  

Системи наукової і інженерної графіки дозволяють в кольорі і в заданому масштабі відображати на екрані наступні об'єкти:

  • графіки двовимірних і тривимірних функцій, заданих в табличному або аналітичному вигляді;

  • системи ізоліній, в тому числі, і нанесені на поверхню об'єкта;

  • перетину, проекції, карти і т.д.

Для побудови легко сприймаються реалістичних зображень тривимірних об'єктів системи інженерної графіки дозволяють видаляти лінії, не видимі спостерігачу.

Існують дотепні способи візуалізації найбільш простих багатовимірних об'єктів - множин точок. Один з них носить назву "особи Чернова" (Чернов - сучасний американський математик).

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

Таким чином, кожній точці вихідного безлічі буде зіставлено особа. Розглядаючи ці особи, можна відібрати схожі між собою або ж виділити абсолютно несхожі і тим самим виробити якусь класифікацію вихідного безлічі.

107. Табличний процесор.

Табличний процесор - це комплекс взаємопов'язаних програм, призначений для обробки електронних таблиць.

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

Значення в числовий клітці таблиці може бути або записано, або розраховане за відповідною формулою; у формулі можуть бути присутніми звернення до інших клітин.

                      Електронна таблиця                  Microsoft Excel

Кожного разу при зміні значення в клітці таблиці в результаті записи в неї нового значення з клавіатури перераховуються також значення у всіх тих клітинах, в яких стоять величини, залежні від даної клітини.

Графів і рядкам можна привласнювати найменування. Екран монітора трактується як вікно, через яке можна розглядати таблицю цілком або по частинах.

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

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

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

Найпопулярніші табличні процесори - Microsoft Excel (Ексель) і Lotus 1-2-3 .

У Microsoft Excel автоматизовані багато рутинних операцій, спеціальні шаблони допомагають створювати звіти, імпортувати дані та багато іншого.

Lotus 1-2-3 - професійний процесор електронних таблиць. Широкі графічні можливості і зручний інтерфейс пакета дозволяють швидко орієнтуватися в ньому. З його допомогою можна створити будь-який фінансовий документ, звіт для бухгалтерії, скласти бюджет, а потім розмістити всі ці документи в базах даних.

108. Системи управління базами даних.

База даних - це один або декілька файлів даних, призначених для зберігання, зміни і обробки великих обсягів взаємозалежної інформації.

У базі даних підприємства, наприклад, може зберігатися:

  • вся інформація про штатний розклад, про робітників і службовців підприємства;

  • відомості про матеріальні цінності;

  • дані про надходження сировини і комплектуючих;

  • відомості про запаси на складах;

  • дані про випуск готової продукції;

  • накази і розпорядження дирекції і т.п.

Навіть невеликі зміни якої інформації можуть приводити до значних змін в різних інших місцях.

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

Бази даних використовуються під управлінням систем управління базами даних ( СКБД ).

Система управління базами даних (СКБД) - це система програмного забезпечення, що дозволяє обробляти звернення до бази даних, що надходять від прикладних програм кінцевих користувачів.

         Вікно СУБД Access

Системи управління базами даних дозволяють об'єднувати великі обсяги інформації і обробляти їх, сортувати , робити вибірки за певними критеріями і т.п.

Сучасні СУБД дають можливість включати в них не тільки текстову та графічну інформацію, але і звукові фрагменти і навіть відеокліпи.

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

СУБД а також зручний доступ до них.

Популярні СУБД - FoxPro , Access for Windows , Paradox.

Для менш складних застосувань замість СУБД використовуються інформаційно-пошукові системи ( ІПС ), які виконують такі функції:

  • зберігання великого обсягу інформації;

  • швидкий пошук необхідної інформації;

  • додавання , видалення і зміна збереженої інформації;

  • висновок її в зручному для людини вигляді.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]