Što je korisnički način u odnosu na kernel način u sustavu Windows
Možda ste čuli za aplikacije koje se izvode u "kernel" ili "korisničkom" načinu rada. Sve se svodi na to kako operativni sustavi rade kada rade svoj posao. Kada to shvatite, lako je shvatiti razliku između korisničkog načina rada i načina rada jezgre.
Razumijevanje onoga što operativni sustav radi(Does)
Računalo se sastoji od hardvera, elektroničkih komponenti i softvera, računalnog koda koji izvršava taj hardver. Ali ono što je možda manje jasno je kako rade zajedno.
Najvažniji element računala je bit ili „binarna znamenka. ” Sve što(” Everything) radi računalo predstavljeno je kao jedinice i nule. Različite(Different) komponente računala predstavljaju bitove na različite načine. U CPU -u , mikroskopski tranzistori predstavljaju jedinice i nule tako što su uključeni ili isključeni. Ti tranzistori su raspoređeni u logičke strukture, nazvane logička vrata.
U memoriji elektroničkog računala bitovi su predstavljeni memorijskim ćelijama koje imaju naboj iznad ili ispod određenog praga. Na mehaničkom tvrdom disku bitovi su predstavljeni kao magnetske fluktuacije mjerene na ploči koja se vrti. Na optičkim diskovima, jame i zemlje koje reflektiraju ili ne reflektiraju lasersko svjetlo rade isti posao.
Bez obzira na to kako se postiže fizički prikaz binarnog koda, na kraju možete svesti sve komponente računala potrošača na ovaj sirovi strojni kod.
Dakle, kako prijeći od sučelja prilagođenog ljudima na računalu do sirovih procesa niske razine u samom računalu? Tu dolazi operativni sustav. On izravno kontrolira hardver računala.
Ovaj softver prevodi sve što aplikacije (a samim tim i korisnik) žele u upute strojnog koda koje razumiju CPU i druge komponente. Najkritičniji dio softvera u ovom procesu je kernel.
Što je kernel?
Kernel je, kao što ime govori, jezgra operacijskog sustava. Kernel je softver koji se nalazi u RAM- u i usmjerava sve što računalo radi. Kada se nešto zapiše u memoriju, kernel je ta koja usmjerava izvršenje.
Kernel zna kako se sučeljavati s hardverom kao što su GPU-ovi(GPUs) i mrežne kartice, ali možda neće znati kako ih koristiti do punog potencijala, oslanjajući se na generičke standarde u računalnoj industriji.
Ovdje dolaze u obzir hardverski drajveri. Upravljački programi govore vašem operativnom sustavu kako raditi s određenim komponentama, zbog čega su vam potrebni različiti drajveri za Nvidia i AMD GPU(AMD GPUs) , na primjer.
Opremljen pravim upravljačkim programima, kernel je ultimativni autoritet unutar računala, uključujući radnje koje mogu katastrofalno uništiti podatke.
Uloga aplikacijskih (Role)programskih(Application Programming Interfaces) sučelja ( API(APIs) )
U danima MS-DOS-a(MS-DOS) , programeri softvera morali su pisati svoj softver posebno za hardver korisnika. Najozloglašeniji primjer ovoga na MS-DOS sustavima bili su upravljački programi zvučnih kartica.
Određena video igra morala bi podržavati najpopularnije kartice ( Sound Blaster , Ad-lib , Gravis Ultrasound , itd.) i nadati se da je većina igrača pokrivena. Danas stvari rade sasvim drugačije, zahvaljujući API-jima(APIs) .
Microsoft DirectX je izvrstan primjer. Ako želite detaljno objašnjenje, pogledajte Što je DirectX i zašto je važan? (What Is DirectX and Why Is It Important?)Međutim, najvažnije je znati da API nudi standardni način na koji programeri softvera traže hardverske resurse od komponenti poput GPU -a . Osim toga, proizvođači hardvera moraju samo osigurati da su njihovi proizvodi usklađeni s DirectX -om kako bi osigurali potpunu kompatibilnost s bilo kojim softverom koji je također usklađen.
API-ji(APIs) nude sloj prijevoda između softverskih aplikacija i kernela niske razine sa svojim hardverskim upravljačkim programima. Da, ovo dolazi s malom kaznom izvedbe. Ipak, na modernim računalima to je zanemarivo, a dolazi s nizom prednosti, gdje konačno dolazimo do korisničkog načina rada i načina rada jezgre.
Korisnički način u odnosu na kernel način
Moderni operativni sustavi pokreću stotine ili tisuće "procesa" istovremeno, dinamički im dajući CPU vrijeme prema potrebi na temelju njihovih prioriteta i zahtjeva za računskom snagom.
Kada pokrenete aplikaciju, ona generira procese, a CPU ih može izvršiti u korisničkom ili kernel načinu.
Windows proces koji se izvodi u korisničkom načinu ima pristup samo svom privatnom adresnom prostoru virtualne memorije i tablici rukovanja. Softver koristi ove tablice za pohranu podataka u RAM i traženje resursa. Nema izravnog pristupa memoriji ili drugom hardveru, a na operacijskom je sustavu da preslika te virtualne prostore na stvarni hardver računala.
To je dobro iz mnogo razloga, ali najvažnija prednost je ta što aplikacija ne može prepisati ili mijenjati podatke izvan svog adresnog prostora virtualne memorije. Osim toga, određene funkcije su zabranjene za procese u korisničkom načinu rada, uglavnom one koji bi mogli srušiti sustav ili uništiti podatke.
Kada se proces pokrene ili je podignut na način rada jezgre, ima puni pristup resursima sustava, čak i onima koji su rezervirani za operativni sustav. Dakle, u teoriji, to bi moglo prebrisati ključne podatke koje operacijski sustav treba da radi ispravno.
Zamke i iznimke
Važno je razumjeti da se ova dva načina rada na hardverskoj razini provodi sam CPU . Ako aplikacija koja radi u korisničkom načinu pokušava učiniti nešto što zahtijeva pristup u načinu rada jezgre, generira "zamku" ili "iznimku". Operativni sustav će se tada pozabaviti aplikacijom, obično tako što će je isključiti i generirati zapisnik o padu kako bi programeri mogli vidjeti što se dogodilo u memoriji kada su stvari krenule izvan tračnica.
Opasnosti (Dangers)kernel(Kernel Mode) moda : Plavi (Death)ekran(Blue Screen) smrti _
Ako ste ikada doživjeli Plavi ekran (Blue Screen)smrti(Death) ( tko nije?) koji je prisilio vaše računalo da se isključi ili ponovno pokrene, postoji velika šansa da je kriv proces u načinu rada jezgre.
Kada proces u kernel modu učini nešto što ne bi trebao, operativni sustav se ne može oporaviti od toga i cijelo računalo se zaustavlja. Kada proces u korisničkom načinu rada krene naopako, samo se aplikacija ruši, a ostatak softvera i operativni sustav mogu se nastaviti bez ikakvih problema.
Ovo je jedno područje u kojem API-ji(APIs) igraju bitnu ulogu budući da API traži privilegije u načinu rada jezgre. Aplikacije u korisničkom načinu rada u biti delegiraju zahtjeve koji bi zahtijevali privilegije načina rada jezgre na API .
To je razlog zašto je kernel-mode obično dodijeljen samo sistemskim procesima niske razine koji trebaju izravno pristupiti hardveru računala. Obično se ova privilegija proširuje na proces jer treba više performansi nego što može pružiti korisnički način. Neke CPU upute rade samo u kernel modu, pa ako proces treba koristiti te funkcije, mora biti povišen.
Ako imate problema s Plavim zaslonom(Blue Screen) smrti , svakako pročitajte naš Vodič za rješavanje problema Plavog ekrana smrti za Windows (Blue Screen of Death Troubleshooting Guide for Windows 10)10(Death) !
Related posts
Kako omogućiti tamni način rada u sustavu Windows 11
Kako instalirati Windows 11 s lokalnim računom
6 načina za odjavu iz sustava Windows 11 -
Kako pokrenuti Windows 11 u sigurnom načinu rada (8 načina) -
5 načina za stvaranje i dodavanje novog korisnika u sustavu Windows 11 -
Kako podesiti svjetlinu web kamere u sustavu Windows 11
7 načina za promjenu korisnika u sustavu Windows 11 -
Čipseti i matične ploče koje podržavaju Windows 11 operativni sustav
Kako promijeniti temu u Microsoft Teams na Windows 11
Kako otvoriti Windows alate u sustavu Windows 11
Kliknite ovdje da biste unijeli svoju najnoviju poruku s vjerodajnicama u sustavu Windows 11
Prikaži ili sakrij ikone u području preljeva kuta trake zadataka u sustavu Windows 11
Ovo računalo ne može pokrenuti Windows 11 - popravite!
Kako sakriti značke na ikonama trake zadataka u sustavu Windows 11
Kako instalirati Windows 11 pomoću Hyper-V u sustavu Windows
Kako instalirati Windows podsustav za Linux na Windows 11
Kako funkcija dinamičke brzine osvježavanja radi u sustavu Windows 11
Kako omogućiti ili onemogućiti Snap Layouts u sustavu Windows 11
Kako promijeniti veličinu trake zadataka u sustavu Windows 11
Kako popraviti da Windows 11 način mirovanja ne radi