Операционни системи

Обща класификация

Програмното осигуряване (софтуер / Software) е записано във външната памет, като при изпълнение то се зарежда в оперативната памет на компютъра и той се използва за решаване на различни по тип задачи.
Програмното осигуряване се дели на системно програмно осигуряване (СПО) и приложно (потребителско) програмно осигуряване (ППО).

А) Приложно програмно осигуряване (ППО) – включва всички програми, които потребителите използват, за да решат многообразни задачи и да използват пълноценно наличните хардуерни ресурси. Приложното програмно осигуряване се дели на:
1) офис програми – предназначени да задоволяват нуждите на потребителите при работата им в офиса.
– Open Office – програмен пакет с отворен код, който се използва основно за текстообработка, за работа с електронни таблици, за създаване на презентации, за работа с графика и с бази данни. Open Office може да бъде използван под различни операционни системи.
– MS Office – пакет от приложение, написани за ОС Microsoft Windows и Mac OS X. Чрез пакета от програми може да се обработва текст, създава таблици, управлява лична информация и др.

Офис програмите включват:

1.1 Текстообработващи програми и системи – компютърни приложения, които се използват за печат, редактиране и представяне на текст. Текстообразуващите системи са екранен редактор, който има набор от възможности и инструменти за форматиране на текст, параграф, настройки на страницата и на разположените на текста и др. Eдна от най-широко използваните текстообработващи системи е MS Word (Microsoft Office) и Write (Open Office). Стандартните формати са .doc, .docx, .rtf.

1.2 Електронни таблици – обработка и организация на данни в табличен вид. Те обработват данните посредством формули и вградени функции. Те имат инструменти за представяне на данните от таблиците във вид на графики (диаграми). Представители на този тип програми са MS Excel (MS Office) и Calc (Open Office.)

1.3 Системи за управление на база данни (СУБД) – система от компютърни програми, даващи възможност за изграждане, поддържане и работа с база данни. СУБД са мрежови, йерархични и релационни. Представители на тази група са: dBase, Oracle, MS Access, MySQL и др.

1.4 Други офис приложения – позволяват създаването на презентации (MS PowerPoint), пресмятането на прости математически изрази (Calculator) и др.

2) Програми за работа в Интернет пространството – дават възможност на потребителите да изпълняват различни задачи, касаещи ресурсите в Интернет пространството. Те биват:

– браузъри – служат за навигация в Интернет и визуализация на съдържанието на Интернет страниците. Най-широко са разпространени браузърите Google Chrome, Mozilla Firefox, Opera, Internet Explorer и други;

– E-mail клиенти – осигуряват работа с електронна поща (Outlook Express);

– FTP клиенти – дават възможност за качване и сваляне на файлове от Интернет;

– програми за векторна графика – Corel Draw;

– програми за растерна графика – Paint, Photoshop и други;

– професионални програмни пакети – служат за създаване и обработка на графични скици и чертежи. Разполагат с вградени библиотеки.

2.1 Софтуер за работа с аудиофайлове – програмите от тази група поддържат различни аудио формати. По отношение на възможностите, които представят , се разделят на две основни групи:

2.1.1 Програми, възпроизвеждащи аудиофайлове – Winamp;

2.1.2 Програми, позволяващи създаване и редактиране на аудиофайлове – FL Studio.

2.2 Софтуер за работа с видеофайлове – Windows Media Player, Corel Video Studio, Video Studio Express и други.

2.3 Софтуер за работа с файлове с 3D графика и видео – 3D Studio Max, Animation Master, 3DCrafter и други;

2.4 Софтуер за разработка на нови програмни приложения – Pascal, C, C++, JavaScript, Java и други;

2.5 Бизнес софтуер – специален набор от програми и програмни пакети, които са предназначени да решават проблемите на потребителите в различни сфери на бизнеса.

2.6 Инженерен софтуер – програми, представляващи инженерни компютърни решения.

Б) Системно програмно осигуряване (СПО) – то осигурява работата на компютъра и периферните устройства и връзката на компютъра с потребителя.

1) Общи понятия и история

ОС е основната част от системния софтуер, която управлява и координира работата на процесора и устройствата в компютърната система. Тя осигурява работата на приложния софтуер, като заделя необходимите хардуерни ресурси и контролира достъпа на различните приложение до тях. ОС дава достъп на софтуерa и на потребителите до налични набор от функции. Софтуерът ги използва чрез системни повиквания или приложно-програмен интерфейс като предава данни и инструкции на ОС и получава резултати от нея за тяхното изпълнение.

2) Структура на ОС

Елементите на ОС могат да бъдат транзитни и резидентни. Транзитните компоненти се извикват при необходимост и се съхраняват на външен носител. Резидентната част на ОС се намира в оперативната памет, исторически се нарича ядро. То включва базовия набор, въз основа на който се строи останалата част на ОС и се осигурява работата на всички програми в системата.

Функциите на ОС се обединяват в няколко групи:

• планиране на процесите – необходимост от планиране възниква, когато процесорът доброволно се откаже от функциите си, системният механизъм блокира, настъпва прекъсване на интервален таймер.

• управление на процесите – в ОС непрекъснато се създават и унищожават процеси като трябва да има примитиви. Планировчика (диспечера) на ОС след работа на определен процес, определя кой процес да продължи и какви ресурси да му се отдадат. Ресурстът е многократно използваем от процесите обект. Ресурсите имат едно основно свойство – процесите блокират при неподходяща заявка за ресурс и могат да се опишат с едни и същи средства. Когато процес изпрати заявка за разпределение на ресурс, той се блокира, докато не получи ресурса, без който не може да продължи развитието си. Методите за управление на различните класове ресурси се различават драстично – някои от ресурсите (процесор, диск) могат да се използват от процесорите, други са индивидуални (лента, данни, печатащо устройство), а трети – и по двата начина (памет, кодови сегменти);

• процес може да създаде един или няколко процеса. Следващият процес се нарича родител, а създадените процеси потомци;

• управление на входа и изхода и файловете от данни – основните операции са четене, запис и управление. За да се извършат тези операции ядрото трябва да извърши: 1) инициране на входно-изходните операции и 2) обработка на прекъсванията по вход/изход, постъпили от канала (устройството) при завършване на операцията или възникване на грешка. Предполага се, че към всеки канал има включени няколко устройства.;

• обработка на прекъсванията – това са събития, при които се променя редът на изпълнение на командите от процесора. Тези прекъсвания обикновено са два вида: външни и вътрешни. Външните прекъсвания са предизвикани от прекъсвания, които произлизат от прекъсвания процес. Такива прекъсвания могат да се причиняват от входно-изходната апаратура, таймера, от пулта за управление и други. Вътрешните прекъсвания се придизвикват от работата на процесора. Такива са програмните грешки, нарушаване на защитата на паметта и др. Действията по обработка на прекъсванията обикновено са: запомняне на определено място на характеристиката на прекъсването; запомняне състоянието на прекъснатия процес; определяне на източника на прекъсването и предаване на управлението на съответната програма. Прекъсването е апаратно реализирано решение и е хардуерно зависимо.

3. Операционни системи – те се използва от всички потребители и управляват основния хардуер и периферните устройства, осигуряват платформа за работещите приложения, служат за връзка между потребителя и апаратната част , т.е. те са интерфейс (връзка) между потребителя и хардуера.

Видовете ОС са свързани с развитието на понятия като пакетен режим, разделение по време и многозадачност, разделение по пълномощия, реален временен мащаб, работа с файлови системи.

Исторически необходимостта от оптимално използване на скъпите изчислителни ресурси води до появата на концепцията „пакетен режим“ на изпълнение на програмите, който предполага наличието на определен ред, при което ОС може да зарежда програмата в оперативната памет от външни носители на данни, без да изчаква завършването на изпълнението на предходната програма и така се избягва излишен престой на процесора. В развития вариант на пакетния режим времето на процесора се разпределя между изпълнението на няколко програми (понятието за „многозадачност“ или „мултипрограмиране“). „Разделението по време“ (time sharing) позволява създаването на многопотребителски системи, в които централният процесор и блокът на оперативната памет обслужват много потребители. Заради това част от задачите (като въвеждане или редактиране на данни) могат да се изпълняват в диалогов режим, а други (като обемните изчисления) – в пакетен режим.

1) Едно или многозадачни – според броя на едновременно изпълняваните задачи, например: MS-DOS (еднозадачна) и MS Windows, Linux (многозадачни). Еднозадачната ОС изпълнява само една задача в даден момент, докато многозадачната изпълнява няколко задачи едновременно.
2) Едно или многопотребителски – според броя на едновременно работещите в компютъра потребители, например: MS-DOS, MS Windows (едно потребителски) и UNIX (многопотребителски). Еднопотребителските ОС не различават потребителите, но не са непременно еднозадачни, тъй като няколко програми могат да се изпълняват в съчетание.

Например MS DOS е еднопотребителска еднозадачна ОС.

Многопотребителските ОС различават потребителите по отношение ползването на процеси и ресурси.

При многозадачните и многопотребителските операционни системи процесорът (CPU) се използва по-пълноценно и може да работи в режим на:

– времеделение (time sharing) – CPU отделя временен интервал , който последователно се използва от CPU за работа на всяка от стартираните програми;

– приоритетно управление – за всяка стартираната програма се определя приоритет, като CPU работи само с програмата, имаща най-висок приоритет. Когато се изпълняват например входно-изходни програми, CPU не участва и тогава се стартира изпълнението на следващата по приоритет програма.

3) Специализирани и потребителски – съществуват много разновидности на тясно специализирани ОС. Например, мрежовите ОС Unix, Solaris, NetWare и др. Операционните системи за суперкомпютрите, които обикновено са собствени разработки или са преработени съществуващи ОС, както и ОС за разпределени и облачни изчисления са също силно специализирани. От друга страна Windows, Mac OS, OpenSolaris, GNU/Linux, BSD са предназначени да изпълняват много по-широк кръг от задачи. Те се наричат потребителски операционни системи.

3.1 Операционните система биват:

– дискови и резиденти – според разположението на операционната система по време на работа. При дисковите ОС, по време на работа, в RAM паметта се намира само ядрото на ОС, а при резидентите – цялата ОС.

– текстови (командни) или графични – според интерфейса (връзката) с потребителя. Текстовите (командните) ОС работят с командни редове, въвеждани от потребителя – например MS-DOS. Графичните ОС включват GUI (Graphical User Interface) и използват мишка, като работят с графични обекти (например икони), разположение на екрана на монитора;

– мрежови ОС – управляват работата на няколко свързани в мрежа компютри, контролират обмена на информация между тях, гарантират сигурността на информацията и др. – например LINUX, Windows NT и др.

3.1 Драйвери програми – драйверите програми, заедно с операционната система, осигуряват работата на хардуера и осъществяват управлението му.

3.2 Програми, обслужващи операционната система – допълват работата на ОС, осъществяват поддръжка и конфигурацията й. Това са програми, които решават универсални потребителски проблеми, свързани със сигурността, програми за работа с външните памети и за работа с файлове и директории. Те могат да бъдат разделени на:

– програми за обслужване на външни памети –дисковите дефрагментиращи програми (Disk Defragmenter), програми за създаване на дискови дялове, програми за проверка на състоянието на дискове, дискети и т.н., програми за възстановяване на данни и други;

– файлови мениджъри (File Manager) – дават възможност за създаване, копиране, преместване, изтриване, преименуване на файлове и директории (папки), както и за извеждане и сортиране на съдържанието на директории (папки);

– антивирусни програми – осигуряват зашита от заразяване на компютърната система с вируси, както и служат за унищожаването на вирусите, в случай че системната е заразена;

– архивиращи програми – служат за архивиране на данни. Архивирането на данни се извършва, когато за да се намали размера им при тяхното съхраняване и/или при пренасянето им върху външни памети или по мрежа. Най-разпространените архивиращи програми са WinZip, WinRar, tar, bzip2, gzip.

Примери за ОС

Примери за популярни съвременни ОС са: Andorid, BlackBerry, BSD, Chrome OS, iOS, Linux, OS X, Microsoft Widnows и др.

Unix и базирани на нея
UNIX е търговска марка на консорциума The Open Group. UNIX-базираните системи са ОС, които наподобяват оригиналния UNIX. Те работят на най-разнообразни компютърни архитектури. Използват се много при сървъри в бизнеса и при работни станции в научноизследователски организации. Популярни варианти на UNIX са Linux и BSD, които са свободен софтуер.

BSD е подгрупа на Unix. Тази ОС се използва най-често на уебсървъри, макар че могат да работят и като ОС на персонални компютри. Интернет дължи съществуването си до голяма степен на BSD.

OS X на Apple (с предишно име Mac OS), е ОС с графичен интерфейс. OS X е разработена след като Apple придобива компанията през 1997. Първата й версия Mac OS X Server 1.0 е от 1999. Оттогава има още шест различни клиент или сървър версии и марката е ребрандирана като „OS X“.

Linux -появява се през 1991 и е Unix-базирана ОС, но за разлика от BSD и нейните варианти не използва програмния код на Unix. Поради отворения си лиценз програмният код на Линукс ядрото може да бъде изучаван и променян и в резултат на това тази ОС се използва на най-разнообразни компютърни устройства.

Хром на Гугъл е ОС, изградена от Google на базата на Линукс ядро. Тя е насочена към потребители, прекарващи повечето време в Интернет. Тя силно разчита на Интернет или уеб приложения, за да изпълнява задачи в браузъра като например текстообработка.

Уиндоус е ОС със затворен код, разработвани от Майкрософт и насочени основно към компютри с Intel архитектура. Създадена е през 1985г.. Първият компютър, използвал Windows, е IBM Personal System/2. Сървърните версии на Windows се използват широко. В последните години Майкрософт насочи много сили и средства, за да насърчи използването на Windows като сървърна ОС. Въпреки това, делът му на използване при сървърите не е така голям като при персоналните компютри, защото среща конкуренцията на Linux и BSD.

Други ОС – съществуват много ОС, например AmigaOS; FreeMint; OS/2 от IBM и Майкрософт; Mac OS; BeOS; BareMetal; MorphOS; XTS-300; RISC OS; Haiku. Някои все още се използват в пазарни ниши и продължават да се разработват. Някои ОС се използват изключително в научните организации, за обучение или за изучаване на концепциите при разработката на ОС.

Пазарен дял на основните ОС:
Световни доставки на устройства с инсталирани ОС (милиона броя) 
Операционна система 2012 г. 2013 г.
Android 504 878
Windows 346 328
iOS/Mac OS 214 267
BlackBerry 35 24
Други 1,117 803
Общо 2,216 2,300
Източник: Gartner

Към началото