ядро

Какво е ядрото:

Ядрото е английска дума, използвана в изчисленията за определяне на ядрото на операционната система, която е основната част на компютъра.

Една проста промяна от версията на ядрото към по-стара или по-актуална версия може да е достатъчна за разрешаване на проблеми с хардуера и съвместимостта на компютъра.

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

Веднага след като започне да работи, ядрото стартира процес, който открива целия хардуер, необходим за правилната работа на компютъра.

В допълнение, ядрото управлява входните и изходните заявки на софтуера и управлява, например, използваните памет и периферни устройства.

Функция на ядрото

Ядрото, ядрото на системата, отговаря за свързването на софтуера към хардуера.

По този начин той установява ефективна комуникация между ресурсите на операционната система и управлява основните му функции.

Вижте по-долу основните функции на операционната система, администрирана от ядрото.

Управление на процеси

В операционна система процесът е изпълнявана програма.

Управлението на процеса, извършено от ядрото, решава кои процеси ще бъдат изпълнени.

Всеки от изпълняваните процеси може да влиза и излиза от процесора няколко пъти в една и съща секунда, като дава път на друг процес.

Ядрото е отговорно за решението кои процеси ще бъдат разпределени на процесора.

Тъй като превключването между процесите се извършва много бързо, програмата може да продължи да работи, дори ако не е на процесора.

Режими за достъп

Изпълнението на процес може да се извърши по два различни начина.

Потребителски режим : състои се от няколко подсистеми. Една от тях, включително подсистемата за околната среда, изпълнява приложения, предназначени за различни типове операционни системи.

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

Режим на ядрото : счита се за привилегирован, защото има достъп до целия компютър. Когато процесорът е в режим на ядрото, той показва, че работи надежден софтуер и може да изпълни всички инструкции.

Вижте значението на CPU.

Управление на паметта

В диспечера на задачите на ядрото се разпределя част от RAM (обща памет).

По време на управлението на процеса ядрото изпраща програмите към адресно пространство.

Частта от общата памет, разпределена на ядрото, гарантира, че винаги има налична памет за основните процеси, които да бъдат изпратени в това пространство.

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

Управление на устройството

Ядрото контролира периферните устройства, свързани с компютъра.

Всеки път, когато потребителят свърже устройство (например устройство с писалка, принтер, слушалки, мишка и т.н.), ядрото управлява паметта на това устройство и комуникира с програмите и хардуера на компютъра.

Всяко устройство има устройство, което е създадено да работи на определена операционна система. Следователно драйверът, проектиран за Windows, не работи, например, на MAC.

Драйверът на всяко устройство е да извърши вид превод на команди, изпълнявани между дадено електронно устройство и операционната система на компютъра.

Достъпът до услугите на операционната система става чрез потребителски интерфейс, наречен shell, който на английски означава "shell". Името се дължи на факта, че обвивката е най-външният слой, около ядрото.

Вижте смисъла на интерфейса.

Системни повиквания

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

Тези функции често са сложни и използват функции, до които средният потребител няма достъп.

Вижте по-долу някои примери за системни повиквания на Windows и съответното им ядро ​​на Linux.

WindowsLinuxОписание на продукта

CloseHandle

близо

Затворете файла

CreateFileотворенСъздаване на файл
DeleteFileпрекратяване на връзкатаИзтриване на файл
ExitProcessизходПрекратете процеса и всичките му сегменти
GetLocalTimeекипИзвличане на текущо местоположение, дата и час

Научете повече за Windows.

Видове ядра

По отношение на своята архитектура, сърцевината на една операционна система може да бъде монолитна, хибридна или микроядра .

монолитен

Драйверите на устройствата и разширенията на ядрото се изпълняват в пространството на ядрото с пълен хардуерен достъп.

Тъй като всички модули се изпълняват в едно и също адресно пространство, ако възникне грешка в едно от тези пространства, цялата система може да бъде засегната.

Примери за монолитни : Linux, BSD, MS-DOS и Solaris.

Linux е един от най-известните монолитни ядра,

Като свободен и преносим софтуер, Linux има предимството да работи на десетки платформи, от IBM компютри до мобилни устройства, смартфони или iPod.

Научете повече за софтуера и хардуера.

Микроядра или микроядро

Микроядрото, както подсказва името, е много малко ядро ​​и затова извършва колкото се може по-малко процеси в пространството на ядрото.

Някои от процесите се изпълняват в потребителското пространство.

С ядрото от тип микроядра, ако възникне грешка, просто рестартирайте услугата, която е представила проблема.

Това ще попречи на цялата система да бъде преобърната (както при монолитно ядро).

Примери за микроядра : AIX, BeOS, L4, Mach, Minix, MorphOS, QNX, RADIOS, VSTa и GNU Hurd.

хибрид

Хибридните системи се считат за системи, които работят със средна повърхност в сравнение с монолитни и микроядра.

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

Хибридното ядро ​​е подобно на микроядрото, но има код ("несъществен") в ядрото, така че изпълнените операции са по-бързи.

Примери за хибриди : AmigaOS, Android, Chrome, Macintosh, webOS, Windows, OSX и Xinu.

Ядрото на Android е изградено от Linux. Въпреки това, не всички класифицират Android като Linux, защото смятат, че той е базиран само на Linux, но не и на самия Linux.

Научете повече за Android.