Kompatibilnost sa sustavom Windows

Linux kernel u sustavu Windows 10

Linux kernel u sustavu Windows 10
Kako funkcionira novi Windows podsustav za Linux (v2)?

Microsoft je nedavno najavio da će uskoro isporučiti Linux kernel koji je integriran izravno u Windows 10. To će omogućiti programerima da iskoriste platformu Windows 10 pri razvoju aplikacija za Linux. Zapravo je ovo sljedeći korak u evoluciji Windows podsustava za Linux (WSL). Razmotrimo WSL verziju 1 prije nego što uđemo u gustu međusobnu integraciju jezgre Linuxa i što to znači.

Ako želite započeti s WSL-om (v1), evo vodiča za to.

1.  WSL verzija1

Podsistem Windows za Linux zaista bi se trebao zvati Linux podsustav za Windows. Nudi pokretački program (podsustav) za Windows OS koji prevodi pozive sustava Linux u izvorne pozive sustava Windows 10 koje NT kernel razumije.

To stvara pomalo vjerodostojnu iluziju za Linux binarne datoteke da oni zapravo rade na vrhu Linux jezgre! To radi dovoljno dobro da ne samo da možete pokretati jednostavne 64-bitne binarne datoteke kompajlirane za Linux, već možete pokrenuti i cijelu Korisničku zemlju (a.k.Linux distribucija poput Debiana ili Ubuntua) na vrhu WSL v1. Dakle, kada instalirate Ubuntu iz Microsoftove trgovine, on samo dohvaća binarne datoteke Ubuntu korisničke zemlje koje Canonical isporučuje za Microsoftovo okruženje WSL v1.

Međutim, WSL v1 još uvijek nije savršen. Određena semantika koju bi Linux sustav očekivao potpuno je neprihvatljiva za Windows. Na primjer, ne možete promijeniti naziv otvorene datoteke u sustavu Windows, ali to možete učiniti na Linuxu.

Ostali očiti primjeri uključuju lošu izvedbu datotečnog sustava WSL v1 i njegovu nemogućnost pokretanja Dockera.

2.  WSL v2 Linux kernel

Ova nova verzija WSL-a rješava sve ove probleme uključivanjem Linux jezgre koja radi u hipervizoru Hyper-V. Tijekom svojih najava i demonstracija, Craig Loewen i njegov kolega iz Microsofta naglašavali su da će Microsoft, idući naprijed, ulagati u tehnologiju virtualizacije.

Korištenje Linux kernela rješava sve semantičke probleme koji se ne mogu riješiti samo pomoću sloja za prijevod sistemskog poziva. Ovaj Linux kernel bit će vrlo lagan i održavat će ga Microsoft uz sve promjene na Linux kernelu napravljene otvorenim kodom. U svojoj demonstraciji pokazali su kako možete jednostavno migrirati postojeće WSL v1 aplikacije da bi se izmijenile u WSL v2 okruženje. Izvedba datotečnog sustava popravila se 3-4 puta i cijeli sustav osjeća puno veću reakciju.

3.  Kako radi?

U osnovi, imamo Linux VM s puno userland aplikacija, npr.g, OpenSUSE ili Debian ili Ubuntu korisnička zemlja. Na vašem Windows računalu dobivate više distribucija s jednim Linux VM-om, tako da je to uredno. Ali to također podrazumijeva da svaki put kada otvorite svoj WSL Ubuntu terminal, podižete kompletan VM! To će potrajati, zar ne?

Zapravo ne. Linux jezgra je zapravo dovoljno mala i dovoljno lagana da je Microsoft s njom uspio dobiti luda vremena pokretanja (~ 1sekunda). To su postigli uklanjanjem sav bootloader koda, a budući da je VM, izravno učitavaju Linux kernel u njegov adresni prostor u memoriji i postavljaju nekoliko stanja VM-a koje kernel očekuje. To je isti mehanizam koji pokreće još jednu novu značajku sustava Windows 10, a to je Windows Sandbox.

Ima vrlo mali memorijski otisak, učitava se u sekundi, a izvorni format datotečnog sustava ext4 omogućuje mu vrlo glatko korisničko iskustvo. VM radi samo kad vam zatreba.

Štoviše, nije potpuno izoliran poput tradicionalnog VM-a. Možete vrlo lako komunicirati s ostatkom sustava Windows, uključujući datoteke na Windows pogonima pomoću WSL v2. To nije izolirani VM već integrirani dio sustava Windows 10. Kako to postiže?

4.  Živio plan 9

Uz WSL v1 pristup datotekama i direktorijima na Windowsovim gostima bio je beznačajan. Vaša Linux korisnička zemlja samo je aplikacija na sustavu Windows, tako da prilično lako može čitati i pisati datoteke koje izvorno pripadaju izvornom OS-u.

Sa WSL v2 imate VM koji radi sa svojim virtualnim tvrdim diskom (formatiran naravno ext4) i ako želimo slično iskustvo poput WSL v1, trebamo neke dodatne mehanizme. Unesite plan 9.

Plan 9, također napisan kao, 9P OS je izvorno razvijen u Bell Labs. Iako je malo vjerojatno da ćete ga ikad otvoriti u proizvodnji, on i dalje živi jer razni drugi operativni sustavi usvajaju zanimljive ideje koje se u njemu inkubiraju, uključujući 9P protokol za datotečni poslužitelj.

5.  Datotečni sustavi

WSL v2 imat će poslužitelj protokola 9P pokrenut na vašem Windows 10 hostu i 9P klijent pokrenut unutar vaših WSL aplikacija. To vam omogućuje izvorni pristup datotekama sustava Windows 10 unutar vašeg WSL okruženja. Pogon C: bit će postavljen na / mnt / c, baš kao i WSL v1, a WSL okruženje može doći do svake datoteke unutar hosta Windows 10.

Istina će biti i obratno. U vašem Linux okruženju pokrenut će se poslužitelj protokola 9P s pripadajućim klijentom na Windows 10 računaru. To će korisnicima omogućiti pristup njihovom Linux (ext4) datotečnom sustavu iz Windows 10 okruženja. Omogućavajući vam uređivanje izvornog koda ili konfiguracijskih datoteka pomoću vašeg omiljenog IDE-a instaliranog na sustavu Windows, popisivanje svih direktorija pomoću programa Windows 10 Explorer i još mnogo toga. U osnovi, pokretat ćete svoje omiljene Linux distribucije s Windows 10 UI.

6.  Lučki radnik

U svojoj najavi Microsoft je također nagovijestio da će i ovo novo okruženje Docker koristiti za isporuku svojih budućih aplikacija Docker za Windows. Budući da postoji Linux jezgra, pokretanje Dockera na njoj bit će prilično jednostavno. U demonstraciji su pokrenuli Docker na vrhu Ubuntu-a s WSL-om v2 i radio je kao da radi na izvornoj Ubuntu-ovoj instalaciji.

Dajući vrlo površan primjer, ako ste radili s Dockerfilesima na Windows sustavu, sigurno ste primijetili sigurnosne probleme koji su uzrokovani nedostatkom dozvola za datoteke poput Unixa. To više neće biti problem. Docker u sustavu Windows već koristi prilagođeni VM za pružanje Linux spremnika, vjerojatno će sada koristiti WSL v2 za korištenje Linux kernela koji isporučuje Microsoft.

Zaključak

Sveukupno, impresioniran sam onim što Microsoft radi kako bi pružio utočište programerima Linuxa koji također žele koristiti Windows. Nadamo se da će dugoročno potaknuti puno unakrsnog oprašivanja između dva različita ekosustava.

Ako imate Windows 10 Home, Pro ili Enterprise Edition, možete probati WSL v2 odabirom za Preview builds Windows 10. Evo vodiča kako to učiniti.

Srednja tipka miša ne radi u sustavu Windows 10
The srednja tipka miša pomaže vam u pomicanju kroz dugačke web stranice i zaslone s puno podataka. Ako se to zaustavi, na kraju ćete koristiti tipkovn...
Kako promijeniti lijevu i desnu tipku miša na računalu sa sustavom Windows 10
Sasvim je normalno da su svi uređaji računalnog miša ergonomski dizajnirani za dešnjake. Ali postoje dostupni uređaji za miš koji su posebno dizajnira...
Emulirajte klikove mišem lebdeći mišem bez klika u sustavu Windows 10
Korištenje miša ili tipkovnice u pogrešnom držanju pretjerane upotrebe može rezultirati mnogim zdravstvenim problemima, uključujući naprezanje, sindro...