Апэрацыйная сыстэма: розьніца паміж вэрсіямі

Змесціва выдалена Змесціва дададзена
д r2.6.5) (робат дадаў: mr:ऑपरेटिंग सिस्टिम
артаграфія, злучнасьць
Радок 1:
[[Файл:Operating system placement-be-tarask.svg|thumb|275px|УзаемадзейнічанньнеУзаемадзейнічаньньне паміж рознымі складальнікамі сыстэмы.]]
'''Апэрацыйная сыстэма''' — [[праграмнае забесьпячэньне]], адказнае за кантроль і кіраваньне кампутарным абсталяваньнем і падставовыя сыстэмныя апэрацыі.
 
Радок 18:
Назва «UNIX» зьяўляецца гандлёвай маркай The Open Group. Для абазначэньня доўгага шэрагу апэрацыйных сыстэмаў, якія падобныя на арыгінальны Unix, але ня маюць ліцэнзіі The Open Group, ужываецца назва «Unix-падобныя».
 
Некаторыя варыянты Unix, такія як HP-UX ад Hewlett-Packard і AIX ад [[IBM]], прызначаныя для выкарыстаньня толькі на абсталяванніабсталяваньні вытворцы. Іншыя, такія як Solaris ад Sun Microsystems, могуць працаваць на розных тыпах апаратных плятформаў, уключаючы x86 сэрвэры і ПК. Сучасная АС Mac OS X ад Apple мае гібрыднае ядро на аснове варыянта BSD, атрыманае ад NeXTSTEP, Mach, і FreeBSD.
 
Сумяшчальнасьць Unix дасягаецца шляхам падтрымкі стандартаў POSIX. Стандарты POSIX могуць быць ужытыя да любой апэрацыйнай сыстэмы, хаця пачаткова былі створаны для розных варыянтаў Unix.
Радок 26:
Падгрупу сям’і Unix утварае сямейства Berkeley Software Distribution, якое ўключае FreeBSD, NetBSD і OpenBSD. Гэтыя апэрацыйныя сыстэмы найбольш часта сустракаюцца на вэб-сэрвэрах, хоць яны могуць таксама працаваць у якасьці апэрацыйнай сыстэмы пэрсанальнага кампутара.
 
[[Інтэрнэт]] шмат у чым абавязаная сваім існаваньнем BSD, таму што многія з пратаколаў, якія ў цяперашні час шырока выкарыстоўваюцца для падлучэньня кампутараў, перадачы і атрыманьня дадзеных па сетцы, былі ў значнай ступені распрацаваныя і ўдасканаленыя менавіта ў BSD. [[World Wide Web]] быў ўпершыню прадэманстраваны на некалькіх кампутарах пад кіраваннемкіраваньнем NextStep, АС на аснове BSD.
 
BSD мае свае карані ў Unix. У 1974 годзе Каліфарнійскі ўнівэрсытэт у Бэрклі ўстанавіў свае першыя сыстэмы Unix. Зь цягам часу, студэнты і выкладчыкі ўнівэрсытэта пачалі дадаваць новыя праграмы, такія як [[тэкставы рэдактар|тэкставыя рэдактары]], каб зрабіць лягчэй сваю працу. Калі ўнівэрсытэт Бэрклі атрымаў новы кампутар VAX у 1978 годзе з ўстаноўленым Unix, студэнты зьмянілі Unix нават больш, для таго, каб выкарыстоўваць апаратныя магчымасьці кампутара. Агенцтва пэрспэктыўных абаронных дасьледаваньняў (DARPA) Міністэрства абароны ЗША праявіла цікавасьць, і прыняло рашэньне аб фінансаваньні праекта. Многія школы, карпарацыі і ўрадавыя арганізацыі зьвярнулі ўвагу і сталі выкарыстоўваць вэрсіі Unix ад Бэрклі, замест таго, што афіцыйна распаўсюджваўся AT&T. [[Стыў Джобс]], пасьля выхаду з карпарацыі Apple ў 1985 годзе, заснаваў NeXT Inc, кампанію, якая вырабляла кампутары, якія працуюць на зьмененым BSD пад называй NeXTSTEP. Адна з гэтых машынаў была выкарыстана Тымам Бэрнэрс-Лі, як першы вэб-сэрвэр для стварэньня World Wide Web.
Радок 78:
=== Ядро ===
 
Ядро злучае прыкладное праграмнае забеспячэньнезабесьпячэньне і абсталяваньня кампутара.
 
З дапамогай мікрапраграмаў у пастаяннай памяці прыстасаваньняў ({{lang-en|firmware}}) і драйвераў прыладаў ({{lang-en|device drivers}}), апэрацыйная сыстэма забясьпечвае базавы ўзровень кантролю над апаратнай часткай кампутара. Функцыі апэрацыйнай сыстэмы звычайна ўключаюць: вылучэньне памяці для праграмаў, кіраваньне доступам праграмаў да апаратных рэсурсаў, арганізацыю даных (сродкамі [[Файлавая сыстэма|файлавай сыстэмы]]) для іх доўгатэрміновага захоўваньня, і да т. п.
Радок 84:
==== Выкананьне праграмы ====
 
Апэрацыйная сыстэма забясьпечвае набор паслугаў, якія спрашчаюць распрацоўку прыкладаньняў. ВыкананнеВыкананьне праграмы прадугледжвае стварэньне апэрацыйнай сыстэмай працэсу. Ядро стварае працэс, вылучае яму памяць і іншыя рэсурсы, задае прыярытэт (у шматзадачных сыстэмах), загружае праграмны код у памяць, і запускае выкананьне праграмы.
 
==== Перарываньні ====
Радок 90:
Перарываньні маюць для апэрацыйнай сыстэмы вырашальнае значэньне, паколькі яны прадстаўляюць эфэктыўны спосаб рэагаваць на асяродзьдзе і ўзаемадзейнічаць зь ім з боку апэрацыйнай сыстэмы. Альтэрнатыўны падыход, калі АС сочыць за рознымі крыніцамі, якія патрабуюць рэакцыі (апытаньне), можа быць сустрэты ў сыстэмах зь вельмі малым стэкам.
 
Большасьць сучасных працэсараў прадстаўляе сродкі падтрымкі праграмаваньня з выкарыстаньнем перарываньняў. Па ўзьнікненьні перарываньня апаратная частка кампутара аўтаматычна прыпыняе усе праграмы, якія ў гэты момант працуюць, захоўвае свой статус, і запускае код, раней зьвязаных ззь перарываньнем. У сучасных апэрацыйных сыстэмах перарываньні апрацоўвае ядро апэрацыйнай сыстэмы. Перарываньні могуць паступаць яд апаратнай часткі кампутара, так і ад запушчаных праграмаў.
 
Калі кампутарная прылада выклікае перарываньне, ядро апэрацыйнай сыстэмы вырашае, што рабіць з гэтай падзеяй, як правіла, выконваючы нейкі код апрацоўкі перарываньня. Аб’ём коду, які будзе выкананы, залежыць ад прыярытэту перарываньня. Задачу апрацоўкі апаратнага перарываньня звычайна дэлегуюць праграме пад назвай «драйвэр прылады», які можа быць часткай ядра апэрацыйнай сыстэмы, часткай іншай праграмы, ці абодвух. Драйвэры прылад могуць потым перадаць інфармацыю запушчаным праграмам.
Радок 98:
==== Рэжымы ====
 
Сучасныя працэсары падтрымліваюць некалькі рэжымаў працы. Працэсар у такім выпадку рэалізуе як мінімум два рэжымы: абаронены рэжым і прывілеяваны рэжым. Прывілеяваны рэжым выкарыстоўвае ядро апэрацыйнай сыстэмы для задачаў зь нізкім узроўнем, для якіх неабходны неабмежаваны доступ да абсталяваньня, такіх як кантроль над запісам і сьціраньнем памяці, і зносіны з прыладамі, такімі як відэакарткі. Абаронены рэжым, наадварот, ужываецца амаль для ўсіх астатніх задач. Прыкладаньні працуюць у абароненым рэжыму, і могуць выкарыстоўваць апаратныя сродкі толькі праз узаемадзеяньне ззь ядром, якое кантралюе ўсё ў прывілеяваным рэжыме.
 
Працэсар можа таксама рэалізоўваць іншыя, падобныя на абаронены, рэжымы, напрыклад, віртуальны рэжым, каб эмуляваць стары тып працэсара, напрыклад, 16-разрадны працэсар у 32-разрадным, ці 32-бітны працэсар у 64-бітным.
Радок 108:
==== Кіраваньне памяцьцю ====
 
Сярод іншага, ядро шматзадачнай і шматкарыстальніцкай апэрацыйнай сыстэмы павінна несьці адказнасцьадказнасьць за кіраваньне ўсёй сыстэмнай памяцьцю, якую выкарыстоўваюць бягучыя праграмы. Гэта гарантуе, што праграма не ўмешвацца ў памяць, якую ўжо выкарыстоўвае другая праграма.
 
Каапэратыўная мадэль кіраваньня памяцьцю, якую можна было сустрэць у многіх раньніх апэрацыйных сыстэмах, мяркуе, што ўсе праграмы добраахвотна выкарыстоўваюць сыстэмны мэнэджар памяці, і не перавышаюць выдзелены ім абсяг памяці. Гэту сыстэму кіраваньня памяцьцю сёньня амаль немагчыма сустрэць. У рэальнасьці праграмы часта ўтрымліваюць памылкі, якія могуць прывесьці да перавышэньня выдзеленай памяці. Калі праграма «робіць памылку», гэта можа прывесьці да таго, што будзе закранута або перапісана памяць іншых праграмаў. Шкоднасныя праграмы, ці вірусы, могуць мэтанакіравана зьмяняць памяць другіх праграмаў, ці могуць паўплываць на працу самой апэрацыйнай сыстэмы. Пры каапэратыўным кіраваньні памяцьцю дастаткова толькі адной няспраўнай праграмы, каб парушыць працу ўсёй сыстэмы.
Радок 118:
==== Віртуальная памяць ====
 
Многія апэрацыйныя сыстэмы могуць «падмануць» праграмы, выкарыстоўваючы памяць на [[Цьвёрды дыск|цьвёрдым дыску]] і апэратыўную памяць быццам адзін бесперапынныбесьперапынны кавалак памяці, які называюць [[віртуальная памяць|віртуальнай памяцьцю]]. Выкарыстаньне віртуальнай адрасацыі памяці (такой як ''пагінацыя'' або ''сэгмэнтацыя'') азначае, што ядро можа вырашаць, якую памяць кожная праграма можа выкарыстоўваць у любы момант часу, і дазваляе апэрацыйнай сыстэме выкарыстоўваць адзін участак памяці для некалькіх задачаў.
 
У сучасных апэрацыйных сыстэмах, участак памяці, доступ да якога адбываецца радзей, можа быць часова запісаны на цьвёрды дыск ці іншы носьбіт, каб зрабіць гэту прастору даступнай для выкарыстаньня ў іншых праграмах. Гэта дзеяньне называюць ''падменай'' ({{lang-en|swapping}}), таму што пры выкарыстаньні нейкай вобласьці памяці некалькімі праграмамі, зместзьмест гэтай вобласцівобласьці можа быць заменены ці вернуты па патрабаваньні.
 
==== Шматзадачнасьць ====
 
Шматзадачнасьць азначае выкананьне некалькіх незалежных кампутарных праграмаў на адным кампутары, ствараючы ўражаньне, што кампутар выконвае задачы адначасова. Так як большасцьбольшасьць кампутараў можа рабіць неня больш адной ці двух рэчаў у дадзены момант часу, шматзадачнасьць звычайна дасягаюць з дапамогай падзелу часу, што азначае, што кожная праграма выкарыстоўвае частку часу кампутара для выкананьня.
 
Ядро апэрацыйнай сыстэмы зьмяшчае частку праграмнага коду, так званы ''плянавальнік'' ({{lang-en|scheduler}}), які вызначае, колькі часу кожная праграма будзе займаць рэсурсы, і ў якім парадку кіраваньне будзе перададзена праграмам. Ядро перадае кіраваньне працэсу, яно ж дазваляе праграме доступ да працэсара і памяці. Потым кіраваньне вяртаецца ядру празь нейкі мэханізм, каб яно магло перадаць кіраваньне наступнай праграме. Гэты пераход кантролю паміж ядром і праграмамі называюць ''пераключэньнем кантэксту''.
 
Раньняя мадэль рэгуляваньня выдзяленнявыдзяленьня часу для праграмаў — так званая каапэратыўная шматзадачнасьць. У гэтай мадэлі, калі ядро перадае кіраваньне праграме, яна можа выконвацца столькі часу, колькі пажадае, пакуль яўна не верне кіраваньне ядру. Гэта азначае, што шкоднасная праграмы або няспраўнасьць можа ня толькі забараніць іншым праграмам выкарыстаньне працэсара, але і павесіць ўсю сыстэму, калі ўвойдзе ў бясконцы цыкль.
 
Філязофія ''выцясьняльнай шматзадачнасьці'' заснавана на вылучэньні пэўнага адрэзка часу на цэнтральным працэсары для ўсіх праграмаў. Гэта азначае, што ўсе праграмы павінны быць абмежаваныя ў тым, колькі часу яны могуць займаць працэсар да таго, як адбудзецца перарываньне. Каб дасягнуць гэтага, ядры сучасных апэрацыйных сыстэмаў выкарыстоўваюць прымеркаваныя перарываньні. Ядро ўсталёўвае таймэр абароненага рэжыму, які выклікае вяртаньне ў прывілеяваны рэжым па заканчэньні вызначанага прамежку часу.
Радок 144:
=== Сетка ===
 
У цяперашні час большасьць апэрацыйных сыстэмаў падтрымлівае шэраг сеткавых пратаколаў, апаратных сродкаў і прыкладаньняў для іх выкарыстаньня. Гэта азначае, што кампутары пад кіраваньнем разнастайных апэрацыйных сыстэмаў могуць далучацца да агульнай сеткі для сумеснага выкарыстаньня вылічальных рэсурсаў, файлаў, прынтараў і сканэраў з выкарыстаньнем праваднога альбо бесправаднога злучэньня. Істотна тое, што сетка можа дазваляць апэрацыйнай сыстэме кампутара атрымліваць доступ да рэсурсаў на іншым кампутары з прадстаўленнемпрадстаўленьнем тых жа функцый, якія можна атрымаць пры падлучэньні гэтых рэсурсаў непасрэдна да лякальнага кампутара. Гэта ўключае ў сябе ўсё ад простых зносін да выкарыстаньня сеткавых файлавых сыстэмаў ці нават графікі ці гукавога абсталяваньня іншага кампутара.
 
== Функцыі ==