Skip to main content

Шта је Линук Кернел?

Anonim

За случајне кориснике и љубитеље мање од тврдог обичаја, Линук је оперативни систем. За пуристове, међутим, наслов "Линук" је резервисан за кернел који управља оперативним системом. Ако сте радознали шта је Линук кернел, хајде да одговоримо на то питање с погледом на новог корисника.

Режими

Пре него што објаснимо шта је кернел, важно је разумјети термине "кориснички режим" и "режим кернела". Кориснички режим је када извршавање кода нема могућност директног приступа хардверу или референтној меморији. За приступ приступу хардверу и меморији, код који се покреће у корисничком режиму мора делегирати упутства на интерфејс за програмирање апликација (АПИ). Режим кернела је када извршавање кода има неограничен приступ свим хардверима и резервисан је за најпоузданије функције оперативног система.

Шта је језгро?

Сваки оперативни систем има кернел. Виндовс, МацОС, иОС, Андроид, Цхроме ОС и Линук свака има систем ниског нивоа који је одговоран за повезивање свих апликација са физичким хардвером рачунара. Без кернела, ниједна од ваших апликација не би могла да користи физички рачунар; апликације као што су Фирефок, Цхроме, ЛибреОффице, МС Оффице или Оутлоок неће радити. Кернел је такође одговоран за омогућавање процеса за размјену информација користећи оно што се зове Интер-Процесс Цоммуницатион (ИПЦ).

Постоје (уопштено говорећи) три врсте зрна:

  • Монолитни језгри: ови језгри обухватају ЦПУ, меморију, ИПЦ, управљачке програме, управљање датотекама и системски позиви. Такође је одговоран за предају слободне системске меморије апликацијама. Ове врсте језгара су обично боље приступити хардверу и мултитаскингу.
  • Микрокернели: Микрокернели имају минималистички приступ и управљају само процесором, меморијом и ИПЦ-ом.
  • Хибрид кернелс: Хибрид Кернелс имају могућност да одлуче шта хоће да покрену у режиму Усер или Кернел. Иако ово пружа најбоље од оба света, од произвођача хардвера то захтева много више стварања драјвера који служе за повезивање између покретања кода и хардвера.

Линук користи опен соурце, Монолитхиц Кернел, док МацОС и Виндовс користе Хибрид Кернелс. Линук кернел је замишљен 1991. године од стране Линус Торвалдс. До данашњег дана, г. Торвалдс наставља да буде водећи програмер у Линук кернелу, а програмери из целог света доприносе Линук кернелу. У ствари, процењује се да је скоро 10.000 програмера, од више од 1.000 компанија, допринијело Линук кернелу (пошто је праћење почело 2005. године).

Где је језгро?

Ако отворите прозор терминала и издате команду лс / боот, видећете датотеку која се зове вмлинуз-ВЕРСИОН (Где је ВЕРСИОН име или број издања). Датотека вмлинуз је стварни боотабле Линук кернел, а "з" је да указује да је кернел компримован; тако да уместо вмлинук имамо вмлинуз.

Унутар тог / боот директоријума су друге важне датотеке кернела, као што су инитрд.имг-ВЕРСИОН, систем.мап-ВЕРСИОН и цонфиг-ВЕРСИОН (гдје је ВЕРСИОН име или број издања). Ове друге датотеке служе следећим сврхама:

  • инитрд: користи се као мали РАМдиск који извлачи и извршава стварну датотеку кернела.
  • систем.мап: користи се за управљање меморијом, пре него што се учита кернел.
  • цонфиг: инструкције кернелу о опцијама и модулима за учитавање.

Модули

Без модула, језгро не би много користило. Модули ефикасно укључују управљачке програме неопходне за комуникацију са хардвером без трошења све ваше системске меморије. Модули такође додају функционалност кернелу, као што је комуницирање са периферним уређајима, управљање датотекама, сигурност итд. Могуће је да се листе, додају и уклоне модули у кернел са следећим наредбама:

  • лсмод биће приказани сви тренутно учитани модули кернела.
  • инсмод убацит ће модул кернела у радни кернел.
  • рммод ће истоварити модул из покретачког језгре.

Значи, помоћу неких једноставних наредби, Линук кернел може бити прилично флексибилан.

Тренутни кернел

Од овог писања, стабилно кернел Линука је 4.18.5, али не и све Линук дистрибуције које укључују најновије језгре. У ствари, ажурирана дистрибуција радне површине Елементарног ОСа покреће кернел 4.15.0-30. Шта то значи? У случају најновије језгре на Елементарном ОС-у, то значи:

  • 4 је главна верзија
  • 15 је мала верзија
  • 0-30 је ревизија

Такође је могуће преузети различите верзије Линук кернела са кернел.орг и сами компајлирати. Компилација Линук кернела је задатак који је препуштен онима који стварно знају шта раде. Неправилно састављени језгро може учинити систем неупотребљив. Дакле, уколико нисте спремни да уроните у изазовни задатак компајлирања кода на овом нивоу, користите подразумевани кернел који се испоручује и ажурира на вашу дистрибуцију.