Ред.]Види системного програмного забезпечення

Е

Commodore 64, популярный компьютер 1980-х годов

В конце 70-х — 80-е годы XX века широкое распространение получили небольшие компьютеры, основанные на микропроцессорах. Типичный миникомпьютер тех времён занимал небольшой шкаф и был основан на логических микросхемах; микрокомпьютеры, в отличие от них, были основаны на микросхемах высокой степени интеграции. Использовались они как персональный компьютер и как домашний компьютер.

Особенности

· Простая конструкция, небольшая мощность процессора, небольшой объём памяти.

· Подходящие для квартиры габариты, приемлемая для населения цена.

· Отображение простейшей графики (в отличие от суперкомпьютеров, которым графика не требовалась, и графических рабочих станций, приспособленных под работу со сложной графикой).

· Достаточно дружественная для неспециалиста ОС, как правило, однопользовательская.

· Использование телевизоров и магнитофонов в качестве периферии.

Е

Плата маршрутизатора, около 2008 г. Хорошо видны специфичные для маршрутизатора разъёмы.

Позднее термин «микрокомпьютер», равно как и термин «домашний компьютер», был вытеснен термином «персональный компьютер», а позднее и просто «компьютер».

В настоящее время микрокомпьютерами часто называют встраиваемые системы (англ. embedded system) управления (например, в бытовую технику или автомобили).

Особенности

· Миниатюрная конструкция, рассчитанная на установку в некомпьютерное устройство.

· Минимальная цена.

· Работа в жёстких условиях (влажность, вибрации и т. д.)

· Специализированная ОС, как правило, реального времени.

· Настройка только в сервисном центре, через персональный компьютер.

· Для подключения периферии применяются промышленные шины наподобие I²C.

Е

Raspberry Pi, 2011 г. Видны обычные разъёмы для ПК-периферии (USB, Fast Ethernet,миниджек).

Около 2010-го года появились миниатюрные компьютеры общего назначения наподобие Raspberry Pi с малым энергопотреблением и открытой ОС, как правило, не совместимые с IBM. Предполагаемое назначение таких компьютеров — учебные ПК, АРМы, медиацентры,домашние серверы.

Особенности

· Миниатюрная конструкция, рассчитанная на установку в подходящей нише, на стене, под столом…

· Низкое энергопотребление, позволяющее держать компьютер постоянно включенным.

· Нет движущихся частей (а значит, и шума).

· Бывают как IBM-совместимыми, так и нет.

· Низкая цена, по сравнению с системным блоком ПК.

· Обычная ОС диалогового типа (как правило, основанная на Linux).

· Стандартные разъёмы для компьютерной периферии (USB, DVI, Secure Digital, eSATA).

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

Персона́льний комп'ю́тер (ПК) — електронна обчислювальна машина, призначена для особистого використання, ціна, розміри та можливості якого задовольняють потреби багатьох людей.

Ще у 1968 році дослідник Дуглас Енгельбарт показав те, що стало звичним на початку 21 століття — електронну пошту, гіпертекст, текстовий процесор, відеоконференції та маніпулятора «мишу». Разом з тим у той час використання комп'ютера (ЕОМ) було занадто дорогими для індивідуального користування (у бізнесі чи освіті).

Суперкомпью́тер (англ. supercomputer, СуперЭВМ) — вычислительная машина, значительно превосходящая по своим техническим параметрам большинство существующих компьютеров. Как правило, современные суперкомпьютеры представляют собой большое число высокопроизводительных серверных компьютеров, соединённых друг с другом локальной высокоскоростной магистралью для достижения максимальной производительности в рамках подхода распараллеливания вычислительной задачи.

Мобі́льний зв'язо́к (рухо́мий зв'язо́к) — електрозв'язок із застосуванням радіотехнологій, під час якого кінцеве обладнання хоча б одного із споживачів може вільно переміщатися в межах усіх пунктів закінчення телекомунікаційної мережі, зберігаючи єдиний унікальний ідентифікаційний номер мобільної станції.[1]

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

Класифікація систем мобільного радіозв'язку (СМРЗ)

· Наземні

· системи персонального радіовиклику (СПРВ)

· стільникові СМРЗ (надають доступ до територіального ресурсу)

· найпростіші системи мобільного радіозв'язку, транкінгова система мобільного радіозв'язку (використовують ретранслятори, система автоматично вибирає кращий)

· зонові СМРС (фіксований канал через ретранслятор)

· Супутникові

· геостаціонарні (супутник перебуває на геостаціонарній орбіті, висота близько 34 тисяч км)

· середньорбітальні

· низькоорбітальні

· високоеліптичні (робота супутника здійснюється при його знаходженні в апогеї.)

7.Програмування — це процес проектування, написання, тестування, зневадження і підтримки комп'ютерних програм. Програмування поєднує в собі елементи інженерії (існує навіть відповідна спеціальна галузь інженерії — програмна інженерія (англ. software engineering), фундаментальних наук (перш за все математики) і мистецтва[джерело не вказано 188 днів].

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

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

Критерії якості

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

· Ефективність/Продуктивність: кількість ресурсів системи, що споживає програма (час процесора, розмір пам'яті, зовнішня пам'ять, ширина каналу мережі, і навіть взаємодії з користувачем). Чим менше ресурсів споживається, тим краще;

· Надійність: ймовірність того, що результат роботи програми правильний. Це залежить від корректності алгоритмів та правильності кодування;

· Стійкість: як програма розв'язує проблеми в нестандартних ситуаціях, як наприклад неправильні дані, недоступність необхідних ресурсів як наприклад пам'ять, локальна мережа, та неправильні дії користувача;

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

· Переносимість: діапазон апаратного забезпечення та операційних систем на яких можна компілювати чи інтерпретувати код програми, виконуючи її. Це залежить від відмінностей в програмних ресурсах наданих різними платформами, включаючи ресурси, наявність компіляторів та бібліотек для мови програмування;

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

Ред.]Рівні програмування

Успішне програмування передбачає виконання необхідних дій на таких рівнях[Джерело?]:

· Економічний (бізнес-логіка): Формування вимог до програмного продукту з урахуванням привабливості для користувачів, прибутковості для розробника і наявних можливостей розробника;

· Структурний (архітектура): Створення переліку і взаємозв'язків потрібних модулів, графічних і звукових елементів, алгоритмів, баз даних, файлів, вибір мови програмування;

· Детальний/Фізичний (кодування): Реалізація окремих функцій з використанням конструкцій і операторів мови програмування, друкування тексту програми на клавіатурі.

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

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

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

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

Прикладне програмне забезпечення — це програми, призначені для виконання конкретних завдань користувача. Прикладне програмне забезпечення (англ. application software) також прикладна програма, прикладне ПЗ, застосовна програма — частина програмного забезпечення, що потребує безпосередньої взаємодії та забезпечує користувачевірозв`язання певної задачі. Цим самим поняття прикладного ПЗ є протилежним до системного та іншого допоміжного ПЗ (наприклад операційна система), котрі «лише» забезпечують можливість виконання роботи, але не приносять безпосередньої користі користувачеві.

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

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

Окрім того, виробники системного ПЗ нерідко вбудовують також і прикладні програми, відомим прикладом є ОС Windows, де стандартно вбудовано велику кількість прикладного ПЗ. Ця практика не завжди відповідає вимогам користувачів певної системи.

Є чимало стандартизованого прикладного ПЗ, котре спрямовано на задоволення потреб якомога ширшого кола. Але значна частина прикладного ПЗ розробляється індивідуально «з нуля» або ж на основі стандартних програм для рішення вузьких завдань, наприклад: в межах однієї компанії чи галузі.

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

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

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

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

· Адресна мова програмування

· Фортран

· Кобол

· Алгол

· Pascal

· Java

· C

· C++

· Objective C

· Smalltalk

· C#

· Delphi

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

Трансля́тор (англ. translator) — програма або технічний засіб, який виконує перетворення чи іншу обробку текстів програм.

Транслятори поділяються на:

· компілятори — перетворюють текст програми мови високого рівня в об'єктний код чи байт-код.

· декомпілятори — навпаки, намагаються отримати початковий текст.

· асемблери — перетворюють текст програми мови асемблера в машинний код.

· дизасемблери — навпаки, намагаються розшифрувати машинний код.

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

· препроцесори — отримують текст програми, і повертають перетворений певним чином текст програми.[Джерело?]

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

Підпрограма (subroutine) - частина програми, яка реалізує певний алгоритм і дозволяє звернення до неї з різних частин загальної (головної) програми. В термінах мов програмування: функції (С), процедури (Pascal), методи (в термінології об'єктно-орієнтованого програмування в мовах C++, Java, С# та ін.).

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

Набір найвживаніших підпрограм утворює бібліотеку стандартних підпрограм.

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

Системне програмне забезпечення (англ. system software) — відоміше як операційна система, це будь-яке програмне забезпечення, що забезпечує інфраструктуру, на якій можуть працювати прикладні програми, тобто воно керує і контролює комп'ютерним обладнанням, для можливості виконання прикладних програм. Операційні системи, такі як Microsoft Windows, Mac OS X та Linux є яскравими прикладами системного програмного забезпечення.

Системне програмне забезпечення — це ПЗ, що в принципі забезпечує роботу комп'ютера. Крім операційних систем, іншими прикладами є антивірусні програми, комунікаційні програми та драйвери принтерів. Без системного програмного забезпечення комп'ютер працювати не буде. На відміну від системного програмного забезпечення, програмні засоби, які дозволяють вам робити щось на приклад створення текстових документів, грати в ігри, слухати музику або переглядати веб називаються прикладними. [1]

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

ред.]Види системного програмного забезпечення

· Завантажувачі

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

· Драйвери,

· Компонувальник

· Утиліти

Наши рекомендации