Програмна система вікіпедія

Індустрія програмного забезпечення ділиться на три основні сектори:

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

Перераховане з'являлося один за одним з інтервалом приблизно в десятиліття [15].

Передісторія. Зародження програмування [| ]

Першу програму написала Ада Лавлейс для різницевої машини Чарльза Беббіджа. однак оскільки ця машина так і не була добудована, розробки леді Лавлейс залишилися чисто теоретичними [16].

Перша теорія, що стосується програмного забезпечення, була запропонована англійським математиком Аланом Тьюрингом в 1936 році в есе «On computable numbers with an application to the Entscheidungsproblem» ( «Про обчислюваних числах з додатком до проблеми дозволу») [17] [18] [19] . Він створив так звану машину Тьюринга. математичну модель абстрактної машини, здатної виконувати послідовності рудиментарних операцій, які переводять машину з одного фіксованого стану в інше. Головна ідея полягала в математичному доказі факту, що будь-який наперед заданий стан системи може бути завжди досягнуто послідовним виконанням кінцевого набору елементарних команд (програми) з фіксованого набору команд.

Перші електронно-обчислювальні машини 1940-1950-х років перепрограмувати шляхом перемикання тумблерів і перепідключення кабелів, що вимагало глибокого розуміння їх внутрішнього устрою. До таких машин, зокрема, ставився ENIAC (який, втім, згодом модифікували, щоб він міг, принаймні частково, програмуватися за допомогою перфокарт) [20].

Один із співробітників Тьюринга, Джон Мочлі. ставши пізніше (разом з Джоном Преспером Екертом [en] *) керівником і засновником компанії Eckert-Mauchly Computer Corporation. розробила такі ЕОМ. як BINAC і UNIVAC. доручив своїм співробітникам створити транслятор алгебраїчних формул. Хоча ця амбітна мета в 1940-х роках і не була досягнута, під керівництвом Мочлі був розроблений так званий «Короткий код», в якому операції і змінні кодувалися Двосимвольні поєднаннями. Короткий код був реалізований за допомогою інтерпретатора [22]. Грейс Хоппер. працюючи з початку 1950-х років над набором математичних підпрограм для UNIVAC I. винайшла програму-компонувальник «A-0 [en]», яка по заданому ідентифікатором здійснювала вибірку потрібної підпрограми з бібліотеки. що зберігається на магнітній стрічці. і записувала її в відведене місце оперативної пам'яті [23].

У 1950-ті роки з'явилися перші високорівневі мови програмування, Джон Бекус розробив FORTRAN. а Грейс Хоппер - COBOL. Подібні розробки значно спростили написання прикладного програмного забезпечення, яке писала тоді кожна фірма, яка купує обчислювальну машину [24].

Рання історія. Корпоративне ПО [| ]

Власне сам термін «програмне забезпечення» увійшов у широкий вжиток з початку 1960-х років, коли стало актуальним розмежування команд, керуючих комп'ютером, і його фізичних компонентів - апаратного забезпечення [29]. Тоді ж і почалося становлення індустрії програмного забезпечення. як самостійної галузі. Першою компанією з розробки ПО стала заснована в 1959 році Роєм Натті [en] і Флетчером Джоунсом [en] Computer Sciences Corporation [en] з початковим капіталом в 100 доларів. Першими клієнтами CSC і з'явилися слідом за нею софтверних компаній були надвеликі корпорації і державні організації, на кшталт NASA [30]. і фірма продовжувала працювати на ринку ПЗ на замовлення, як і інші перші програмістські приватні стартапи. такі як Computer Usage Company [en] (CUC) [27].

Першими самостійно випущеними програмними продуктами, які не поставляються в комплекті з комп'ютерним обладнанням, були випущений фірмою Applied Data Research в 1965 році генератор комп'ютерної документації AUTOFLOW. автоматично малює блок-схеми. і транслятор мови програмування MARK-IV [en]. розроблений в 1960-1967 роках в Informatics, Inc. [26] [31] Становлення ринку корпоративного програмного забезпечення тісно пов'язане з появою сімейства комп'ютерів IBM System / 360. Досить масові, відносно недорогі обчислювальні машини, сумісні один з одним на рівні програмного коду, відкрили дорогу тиражованою програмного забезпечення [32].

Поступово коло замовників програмного забезпечення розширювався, що стимулювало розробку нових видів програмного забезпечення. Так з'явилися перші фірми, що спеціалізуються на розробці систем автоматизованого проектування [30].

Персональні комп'ютери та програмне забезпечення для масового споживача [| ]

Поява в 1970-х роках перших персональних комп'ютерів (таких, як Altair 8800) створило передумови і для зародження масового ринку програмного забезпечення. Спочатку програми для персональних комп'ютерів поширювалися в «коробкової» формі через торгові центри або поштою та мали ціну 100-500 доларів США [26].

Класифікація ПЗ [| ]

  • програмне забезпечення, що розробляється на замовлення;
  • програмне забезпечення для великих корпорацій і організацій;
  • програмне забезпечення для масового споживача.

За ступенем переносимості програми ділять на

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

За призначенням програми ділять на:

  • системні;
  • прикладні.

За видами програми ділять [37] на:

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

Системне програмне забезпечення [| ]

Комплекс програм, які забезпечують управління компонентами комп'ютерної системи. такими як процесор. оперативна пам'ять. пристрої введення-виведення. мережеве обладнання. виступаючи як «міжшарового інтерфейс», з одного боку якого апаратура, а з іншого - додатки користувача. На відміну від прикладного програмного забезпечення. системне не вирішує конкретні практичні завдання, а лише забезпечує роботу інших програм, надаючи їм сервісні функції, абстрагуються деталі апаратної і мікропрограмного реалізації обчислювальної системи, управляє апаратними ресурсами обчислювальної системи. Віднесення того чи іншого програмного забезпечення до системного умовно, і залежить від угод, використовуваних в конкретному контексті. Як правило, до системного програмного забезпечення відносяться операційні системи. утиліти [⇨]. системи управління базами даних. широкий клас сполучного програмного забезпечення.

Прикладне програмне забезпечення [| ]

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

Ліцензія [| ]

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

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

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

Див. Також [| ]

Примітки [| ]

Література [| ]

Посилання [| ]

Словники і енциклопедії