CHudniiat sviat na Linuks 2.6
Dzhouzef Pranevich - jpranevich <na>
kniggit.net
Struva ni se siakash edva vchera nie startirahme purvite si
Linuks 2.4 sistemi,
no vremenata se meniat i ekiput razrabotchitsi na iadroto
priblizhava zavurshvaneto na
iadro 2.6. Tozi dokument e prednaznachen za obsht pregled na
harakteristikite na
predstoiashtata versiia na iadroto, nasochen predimno kum i386
Linuks. Za razlika ot
predvaritelnite iziavleniia pri povecheto softuer sus zatvoren
kod, vsichki otlichitelni
cherti opisani v tozi dokument v momenta sa nalichni v 2.6
"testova" seriia iadra.
(Vupreki che vse oshte sushtestvuva veroiatnostta, niakoi
spetsifichni vuzmozhnosti da budat
dobaveni ili premahnati predi istinskoto puskane).
Razrabotkata na iadroto
v momenta e v period na stabilizirane i e spriano dobavianeto
na novi vuzmozhnosti
kato e mnogo veroiatno okonchatelnata versiia da ne se
razlichava mnogo ot tova koeto
imame v momenta. A sushto taka imaite predvid, che niakoi ot
"novite" vuzmozhnosti na
iadroto opisani tuk mogat da budat prehvurleni obratno na
Linuks 2.4 sled purvonachalnoto
im poiaviavane v Linuks 2.6, ofitsialno ili ot
razprostranitelite na razlichnite Linuks
distributsii. Sushto taka sum vklyuchil informatsiia za niakolko
sluchai na novi vuzmozhnosti
vuzniknali po vreme na perioda na poddruzhka na Linuks 2.4,
koito suotvetno shte budat
otbeliazani v teksta.
Tova koeto chetete v momenta e vtora redaktsiia na tozi
dokument s data 26.10.2003 g.
baziran na 2.6.0-test9 razvoino iadro. SHTe ima i drugi
redaktsii puskani sled zavurshvane
na dopulnitelnata rabota po iadroto, no tozi dokument niama
da bude "ofitsialno"
zatvoren dokato ne izleze okonchatelnata versiia na iadroto.
Vupreki che tova e vtora
redaktsiia tia vse oshte mozhe da sudurzha greshki i propuski - ako
gi zabelezhite molia da
me uvedomite i az shte se radvam da gi popravia.
Kum momenta tozi dokument e preveden na shest chuzhdi ezika.
Molia vizhte za poveche informatsiia sektsiia "Prevodi"
nai-dolu.
Istoriiata dotuk...
Proektut na Linuks iadroto be zapochnat prez 1991 g. ot
Linus Torvalds kato
Miniks-podobna operatsionna sistema za negoviia 386 kompyutur.
(Linus purvonachalno
e iskal da ozaglavi proekta Friiks, no segashnoto mu ime e
tova koeto po mu priliaga s techenie
na vremeto). Purvoto ofitsialno puskane na Linuks 1.0 be
prez mart 1994 g., no to poddurzhashe samo
ednoprotsesorni i386 mashini. Samo godina po-kusno (mart 1995
g.) izleze Linuks 1.2 i
tova be purvata versiia, koiato poddurzha razlichni harduerni
platformi (po-spetsialno:
Alfa, Spark i MIPS), no vse-oshte samo ednoprotsesorni modeli.
Linuks 2.0 izleze prez
yuni 1996 g. i sushto vklyuchvashe poddruzhka na niakolko novi
arhitekturi, no predi vsichko
vuvede Linuks v sveta na mnogoprotsesornite mashini (SMP).
Sled versiia 2.0, posledvalite
ia vazhni puskove se zabaviat (Linuks 2.2 izliza prez ianuari
1999 g. a versiia 2.4 prez
ianuari 2001 g.), vsiako novo izdanie razshiriava poddruzhkata v
Linuks na nov harduer i
novi vidove sistemi kakto i podobriava vuzmozhnostite za
nadstroika. (Linuks 2.4 oshte
e zabelezhitelna s tova, che tia e versiiata koiato izvede
Linuks v prostranstvoto na
nastolnite mashini s poddruzhka v iadroto na ISA
Plug-and-Play, USB, PC Card i dr.)
Linuks 2.6 se stremi ne samo da nadgrazhda tezi sistemi, no
i da napravi oshte edin
"goliam skok" napred s podobrena poddruzhka ednovremenno
kakto na znachitelno po-golemi
sistemi taka i na mnogo po-malkite takiva (PDA i dr.
podobni ustroistva.)
Osnovna harduerna poddruzhka
Edno ot nai-vazhnite predimstva na Linuks baziranite
operatsionni sistemi e tiahnata
guvkavost i vuzmozhnostta im za poddruzhka na shirok spektur
ot harduerni platformi.
Dokato tozi dokument e nasochen predimno kum upotrebata na
Linuks na PC-baziran harduer,
Linuks 2.6 iadroto napravi niakoi zabelezhitelni promeni v
tazi oblast koito zasluzhavat
da budat otbeliazani.
Smaliavane -- Linuks za vgradeni sistemi
Edna ot dvete fundamentalni promeni v Linuks 2.6 idva s
priemaneto i dobavianeto
na goliama chast ot proekta uClinux v iadroto. Proektut
uClinux (veroiatno proiznasian kato
"you-see-Linux" - Vie vizhdate Linuks, no po-podhodiashto
izpisvan s grutskiia simvol
"myu" - µ) v deistvitelnost e proekt - Linuks za
mikrokontroleri. Tozi variant na Linuks
veche beshe osnoven dvigatel za poddruzhkata na Linuks na
pazara na vgradenite OS i
negovoto vklyuchvane v ofitsialnata versiia shte okurazhi budeshtoto
razvitie v tazi nasoka.
Za razlika ot "normalnoto" prehvurliane na Linuks za drugi
sistemi s koito sme sviknali,
prehvulianeto mu na vgradeni sistemi niama vsichki vuzmozhnosti
koito nie obiknoveno
svurzvame s iadroto poradi harduerni ogranicheniia. Osnovnata
razlika e, che tezi prehvurlianiia
na koda (ports) sa za protsesori bez MMU. ("memory
management unit" - modul za upravlenie
na pametta, koito pravi zashtiteniia rezhim na OS naistina
"zashtiten"). Vupreki che tova sa
istinski mnogozadachni Linuks sistemi, te niamat zashtita na
pametta i dr. podobni vuzmozhnosti.
(Bez zashtita na pametta sushtestvuva vuzmozhnost svoevolen
protses da chete dannite
ili dori da navredi na drugite protsesi v sistemata). Tova
mozhe da gi napravi neizpolzvaemi
za mnogopotrebitelski sistemi, no te sa prekrasen izbor za
evtini PDA - personalni
tsifrovi pomoshtnitsi ili spetsializirani ustroistva. Trudno e
da se prehvali tazi
arhitekturna promiana v Linuks 2.6 - vsichki versii na Linuks
dosega sa proizvodni
(makar i kosveno) na ogranicheniiata nasledeni ot
originalnata rabota na Linus nad
negoviia Intel 80386.
Sushtestvuvat niakolko novi linii vgradeni protsesori
poddurzhani ot Linuks 2.6,
vklyuchvashti Hitachi H8/300 seriite, protsesorut NEC v850 i
liniiata protsesori za vgrazhdane
na Motorola m68k. Produktite na Motorola sa nai-dobre
poznati na obiknoveniia Linuks
potrebitel tui kato te sa v osnovata na ustroistvata Palm
Pilot zapochvaiki s purvite
(Palm 1000) i nagore chak do Palm III. Drugi modeli s imena
kato Dragonball i ColdFire
sa vklyucheni v sistemi i testovite modeli proizvezhdani ot
Motorola, Lineo, Arcturus i dr.
Za suzhalenie poddruzhkata na drugi po-stari m68k protsesori
bez MMU (napr. 68000 polzvani
v rannite Macintosh) vse oshte ne e obhvanata ot novite
versii, no e mnogo veroiatno
budeshtite "lyubitelski" proekti da se stremiat kum poddruzhka
na Linuks nad tezi i dr. drevni sistemi.
Vupreki che ne e chast ot slivaneto s uClinux (zashtoto tia
vklyuchva MMU), novata versiia
na Linuks sushto vklyuchva poddruzhka na protsesori ETRAX CRIS
("Code Reduced Instruction
Set"- nabor instruktsii s redutsiran kod) na Axis
Communications. (Deistvitelnata poddruzhka
za tozi protsesor se poiavi kato vuzmozhnost v etapa na
poddruzhka na iadro 2.4
-- dosta sled puskaneto na iadro 2.4.0 -- taka che zasluzhava
kratko spomenavane).
Tova e protsesor za vgrazhdane predimno za upotreba v mrezhovi
harduer. Svurzanata
s tova poddruzhka na variantite bez MMU na tezi protsesori
vse oshte ne se dopuska v iadroto,
no vurhu tiah se raboti po vunshni proekti.
V dobavka kum chisto harduernata poddruzhka ima i niakolko
drugi preimushtestva ot
obediniavaneto na rabotata po vgradeni sistemi s iadroto.
Vupreki che povecheto ot tezi
promeni sa "pod kapaka", promeni kato napr. vuzmozhnostta da
se izgradi sistema iztsialo
bez poddruzhka na swap spomaga za podobriavane ustoichivostta
na sistemata kato tsialo.
Mashtabiruemost -- NUMA i oshte...
Vtorata ot nai-vazhnite promeni v Linuks 2.6 raboti v
druga nasoka: da napravi
Linuks po-privlekatelno iadro vuv vse po-golemi i po-golemi
survuri. (Niakoi ot tezi
golemi survuri shte budat i386 bazirani, drugi ne). Goliamata
promiana tuk e novata
poddruzhka v Linuks na NUMA survuri. NUMA (ili "Non-Uniform
Memory Access" -
s ne-ednoroden dostup do pametta) e stupka otvud SMP v
multi-protsesorniia sviat i e
goliam skok napred v efektivnostta pri sistemi s mnogo
protsesori. Mnogoprotsesornite
sistemi v upotreba v momenta biaha proektirani s mnogo ot
ogranicheniiata na svoite
ednoprotsesorni dvoinitsi i po spetsialno s ochakvaneto edin
edinstven obsht rezerv pamet da obsluzhva
vsichki protsesori. Pri mnogo-protsesorna sistema osnovnata
prechka pred proizvoditelnostta
e izklyuchitelno visokoto surevnovanie mezhdu mnogoto
protsesori za edinstvenata sistemna
shina na pametta. NUMA survurite zaobikaliat tozi problem
chrez vuvezhdaneto na ideiata, che
za daden protsesor niakoi chasti ot pametta sa po-blizo
otkolkoto drugi. Edin lesen nachin
(koito ne e suvsem nepravilen tehnicheski) da si predstavim
tova e, che imame sistema
izgradena ot razlichni karti, vsiaka sus svoi protsesori,
pamet, veroiatno i dr. komponenti
(napr. vhodno-izhodni). Pri mnogo takiva karti v edna
sistema, tui kato te mogat
da si komunikirat edna s druga, ochevidno che protsesorite shte
imat po-burz dostup do
lokalnata pamet (pametta razpolozhena vurhu sushtata karta)
otkolkoto do pametta na
druga karta. Mozhete da si predstavite novata NUMA
arhitektura kato neshto podobno
na svurzan kluster na nai-nisko harduerno ravnishte.
Za da poddurzha tezi novi NUMA mashini, Linuks triabva da
se adaptira v niakolko
nasoki za da napravi noviiat model efikasen. Da zapochnem s
tova che be suzdaden
programniia interfeis (API) opisvasht vutreshnata topologiia,
koito spomaga iadroto da
razbira vruzkite na edin protsesor ili dial ot pametta s
vhodno-izhodnite ustroistva
ili s drugi protsesori/pamet. Izhozhdaiki ot tova, mehanizmut
za prevklyuchvane mezhdu
protsesite v Linuks sega ima vuzmozhnost da razbira tezi
vruzki i shte se opita da optimizira
zadachite za po-dobra upotreba na lokalnite resursi.
Dopulnitelno mnogo NUMA mashini sa
izgradeni po takuv nachin, che te imat "dupki" v lineinoto
adresno prostranstvo "mezhdu"
vuzlite. Novoto iadro mozhe da se spravi s tazi
neposledovatelnost po podhodiasht nachin.
Ima i mnogo drugi vutreshni promeni, koito biaha napraveni da
pozvoliat na Linuks da
podurzha tezi visokoproizvoditelni mashini i tova opredeleno
e oblast na rastezh za
iadroto kato tsialo. Kakto i da e, tova e oblast kudeto Linuks
se razrastva i suzriava
mnogo burzo i oshte mnogo rabota ostava da bude svurshena za
nai-efektivnata upotreba
na nalichnite resursi. Prez sledvashtata godina mozhem da
ochakvame mnogo poveche podobreniia
v poddruzhkata ot strana na Linuks na tezi
visokoproizvoditelni sistemi.
Poddruzhka na podarhitekturi
Makar i ne chak tolkova sushtestvena kato predishnite dve
promeni, novata versiia na
iadroto vklyuchva sushto i novata kontseptsiia narechena
"podarhitektura", koiato razshiriava
dosega na Linuks s novi harduerni ustroistva. Predi Linuks
chesto praveshe podrazbirashtoto
se dopuskane, che tipovete protsesori i spetsifichniiat im
harduer vurviat ruka za ruka.
Koeto shte reche, che protsesorite naslednitsi na i386 se
izpolzvat samo na PC/AT-proizvodni
survuri. V Linuks 2.4 tova predpolozhenie be narusheno za
i386 s dobavianeto na poddruzhka
za Visual Workstation na SGI - platforma raboteshta na Intel
chip. (Vsushtnost
to be narusheno mnogo predi tova ot drugite arhitekturi
napr. m68k otdavna poddurzhat
Amiga, Macintosh i dr. platformi). Goliamata promiana v
Linuks 2.6 e, che tazi osobenost
i kontseptsiia be standartizirana po takuv nachin, che vsichki
arhitekturi mogat da se
spraviat s tova po shoden i podhodiasht nachin, koeto pozvoliava
po-iasnoto razgranichavane
mezhdu otdelnite komponenti.
S tazi standartizatsiia idva i poddruzhkata na dve novi
platformi za i386. Purvata
e Voyager arhitekturata na NCR. Tova e mnogoprotsesorna SMP
sistema (razrabotena predi standartnata
sega spetsifikatsiia Intel MP) poddurzhashta protsesori 486-686 i
nagore do 32x konfiguratsii.
Deistvitelniia broi prodadeni konfiguratsii s tazi
arhitektura e otnositelno maluk
i ne vsichki mashini se poddurzhat vse oshte (nai-starite modeli
niamat poddruzhka).
Vtorata poddurzhana arhitektura e po-shiroko razprostranena
PC-9800 platformata razrabotena
ot NEC i prevurnata v (pochti) preobladavashtata PC platforma
v Qponiia do sravnitelno skoro.
Originalnite PC-9800 mashini bili snabdeni s protsesor 8086 i
modela nai-nakraia evolyuiral
i suzrial (usporedno s AT-naslednitsite) dokato nakraia
vklyuchat poddruzhka na SMP i na
protsesori ot klas Pentium. (Razbira se poddruzhkata na
Linuks e ogranichena do 386 ili
po-dobur protsesor). Vupreki che e absolyutno nepoznat v SASHT,
versii na produkti na
Maikrosoft do Uindous 95, sa prehvurleni da rabotiat na tozi
harduer.
Seriiata e ofitsialno zakrita ot proizvoditelia v polza na
"po-standartnite" PC.
Formaliziraiki poddruzhkata na Linuks za tezi "malko
razlichni" vidove harduer,
shte oprosti prehvurlianeto na iadroto i na drugi sistemi, kato
spetsializiraniia
harduer za suhraniavane na danni i dr. komponenti koito
izpolzvat nai-chesto sreshtanite
tipove protsesori. Za da buda napulno iasen - chovek ne triabva
da vzema tova napravlenie
tvurde na seriozno. Tezi podarhitekturi biaha razdeleni
zaradi mnogoto sistemni komponenti
ot nisko nivo (napr. IRQ rutirane) koito sa malko ili
korenno razlichni. Tova e
po-razlichno ot napr. puskaneto na Linuks na X-Box, kudeto
pochti nishto drugo osven
draiverite za harduera i niakoi dr. "priumitsi" razlichavat
sistemata ot edna "povsemestna"
i386 sistema. Poddruzhkata na X-Box niama da bude
podarhitekturna.
Svruh-nishki - hyperthreading
Drugo goliamo harduerno postizhenie poddurzhano ot Linuks
2.6 e t.nar. "svruh-nishkovost" -
hyperthreading. Tova e vuzmozhnost, koiato v momenta e
vgradena samo v suvremennite
Pentium 4 protsesori no prilozhima i drugade, pozvoliavashta
edin fizicheski protsesor da
se maskira (na harduerno nivo) kato dva ili poveche
protsesora. Tova pozvoliava povishavane
na proizvoditelnostta v niakoi sluchai, no sushto taka i dobavia
razpredelitelna slozhnost
i drugi protivorechiia. Klyuchut za podobrenata poddruzhka ot
iadroto na tazi vuzmozhnost
e, che razpredeliteliat na zadachite sega znae kak da
razpoznae i optimizira natovarvaneto
na protsesora vurhu dvata vida virtualni i realni protsesori
v mashinata. V predishnite
versii na Linuks, be mnogo veroiatno da pretovarite edin
edinstven protsesor zashtoto ne be
vuzmozhno da se razpredeli tovarut kato tsialo. Edno ot
zabelezhitelnite neshta na tova
novovuvedenie e, che Linuks be pruv izprevarvaiki pazarnata
kriva v poddruzhkata na
tazi nova harduerna vuzmozhnost napulno prozrachno i
smisleno. (Uindous 2000 survurite mogat
da vizhdat dopulnitelnite psevdo-protsesori, no ne mogat da
gi razpoznaiat kato virtualni.
Sushto taka se iziskvat i dopulnitelni protsesorni litsenzi za
da se vuzpolzvate ot
novite vuzmozhnosti. Edva s izlizaneto Uindous HP Maikrosoft
napulno poddurzha tezi
vuzmozhnosti.)
Spetsifichnite harakteristiki na Linuks
Podobreno nadgrazhdane
V dobavka na dotuk opisanite obshti vuzmozhnosti kato NUMA
i hyperthreading, Linuks 2.6
predlaga i drugi promeni za Intel survurite na vurha na
hranitelnata veriga. Predi
vsichko tova e podobrenata poddruzhka za drugi novi harduerni
vuzmozhnosti na Intel
vklyuchitelno PAE ("Physical Address Extension" - razshirenie
na fizicheskiia adres)
koeto pozvoliava na povecheto novi 32 bitovi x86 sistemi da
imat dostup do 64 Gb. RAM,
no v stranichen rezhim. V dobavka IRQ balansiraneto beshe
znachitelno podobreno pri
mnogoprotsesornite sistemi glavno chrez podobreniia v
poddruzhkata na APIC ot Linuks.
V dopulnenie na poddruzhkata na novi harduerni
vuzmozhnosti, vutreshnite ogranicheniia
sushto biaha svaleni kudeto tova be vuzmozhno, napr. broiat na
unikalni potrebiteli i
grupi na edna Linuks sistema be uvelichen ot 65 000 na nad 4
miliarda (ot 16 bita
na 32 bita), praveiki Linuks mnogo po-praktichen pri golemi
failovi survuri i survuri za
proverka na avtentichnostta. Po podoben nachin broiat na PIDs
(Process IDs - PID
identifikatori na protses) predi prevurtaneto im beshe
uvelichen ot 32 000 na 1 miliard,
podobriavaiki vremeto za startirane na prilozheniia pri mnogo
zaetite ili produlzhitelno
raboteshti sistemi. Vupreki che maksimalniia broi otvoreni
failove ne be uvelichen,
Linuks s iadro 2.6 niama poveche da Vi zadulzhava da ukazvate
predvaritelno kakuv e
limita, a tova chislo shte se samonastroiva. I nakraia Linuks
2.6 shte vklyuchva podobrena
poddruzhka v 64-bitov rezhim na blokovi ustroistva koito go
poddurzhat, dori i pri
32 bitovite platformi kato i386 napr. Tova pozvoliava
failovi sistemi s razmer do 16TB
na nepretentsiozen harduer.
Drugo osnovno podobrenie v skaliruemostta na Linuks 2.6
e, che samoto iadro sega
ne samo poddurzha poveche vidove ustroistva, no to poddurzha i
mnogo poveche
ustroistva ot vseki otdelen vid. Prez vsichki prevuplushteniia
na Linuks do sega (kakto e vsushtnost
i pri povecheto YUniks bazirani operatsionni sistemi)
potrebiteli i prilozheniia raboteshti
v sistemata komunikirat s prikrepeniia harduer izpolzvaiki
nomerirani ustroistva
(chiito vhodni tochki "vuzli" sa opisani v direktoriia
"/dev"). Broiat na tezi vuzli beshe
ogranichen do 255 osnovni "major" ustroistva (obiknoveno
edin tip ustroistvo zaema
edna ili poveche vuzlovi/vhodni tochki) i oshte 255
vtorostepenni "minor" nomera na
ustroistva (obiknoveno tova sa spetsifichni ustroistva ot
opredelen vid) napr. ustroistvoto
"/dev/sda2" (vtoriia dial na purviia otkrit SCSI disk),
poluchava osnoven/"major" nomer 8,
koito e obsht za vsichki SCSI ustroistva i
vtorostepenen/"minor" nomer 2 koito ukazva
vtoriia dial na diska. Razlichnite vidove ustroistva si
razpredeliat osnovnite i vtorostepennite
nomera razlichno, zatova ne mozhe da se opredeli sus
sigurnost kolko tochno ustroistva
mozhe da imate na edna Linuks sistema. Za neshtastie tazi
sistema se narushava opasno
pri golemi sistemi kudeto e napulno vuzmozhno da imate napr.
poveche ot 255 ustroistva
ot daden tip v sistemata. (Pomislete si samo za golemite
masivi za suhraniavane na
informatsiia ili za pechataneto i) Pod Linuks 2.6 tezi
ogranicheniia biaha povdignati, taka che
da razreshat 4095 osnovni/"major" ustroistva i poveche ot
milion dopulnitelni ustroistva za tip.
Tova uvelichenie triabva da e poveche ot dostatuchno za
poddruzhkata na sistemite ot visok
klas zasega.
Interaktivnost i otzivchivost
V dobavka kum prostoto nadgrazhdane i skaliruemost drug
prioritet na novata versiia
be da se napravi sistemata po "otzivchiva" t.e. s minimalno
vreme na reaktsiia. Tova
e polezno ne samo za nastolniia potrebitel (koito vinagi
iska da vidi kak neshtata reagirat
po-burzo i svoevremenno), no sushto i pri poveche prilozheniia v
realno vreme kudeto e
neobhodima absolyutna tochnost za postigane na zhelaniia efekt.
Vupreki vsichki tezi promeni
Linuks 2.6 niama da bude "istinska" realno vremeva OS, koiato
ima mnogo striktni iziskvaniia
za absolyutno garantirane, che subitiiata shte se sluchvat v
predvidim poriaduk, no vseobshtata i
podobrena "otzivchivost" shte apelira kum vsichki kategorii
Linuks potrebiteli. (Osven tova
sushtestvuvat mnozhestvo vunshni proekti koito predlagat
neofitsialni "krupki" - "patches" osiguriavashti
funktsionalnost na realno-vremeva OS (RTOS). Tezi proekti
biha mogli eventualno da
stanat ofitsialni pri sledvashtiia osnoven pusk na po-nova
versiia na iadroto.)
Edno ot klyuchovite podobreniia v Linuks 2.6 e tova, che
iadroto nai-nakraia e s prioriteti
(prioritetna mnogozadachnost - preemptible). Vuv vsichki
predishni versii na Linuks
samoto iadro ne mozhe da bude prekusvano po sredata na
rabotata si . (Pri sistema s mnozhestvo
protsesori tova e viarno za vseki edin ot tiah pootdelno). Pri
Linuks 2.6 iadroto veche
mozhe da bude prekusnato po sredata na zadacha, taka che
drugite prilozheniia mogat da
produlzhat izpulnenieto si dori kogato neshto slozhno i na
mnogo nisko nivo raboti vuv
fonov rezhim. Razbira se vse oshte ima momenti, kogato iadroto
ne mozhe da bude prekusvano
po vreme na svoiata rabota. V realnostta obache, povecheto
potrebiteli nikoga ne zabeliazvat
tezi malki zabavianiia, koito riadko sa po-golemi ot malka
chast ot sekundata. Vupreki tova
mnogo potrebiteli mozhe da zabelezhat podobreniiata v
interaktivnoto povedenie kogato
tazi vuzmozhnost e vklyuchena - napr. neshta kato
vzaimodeistvieto s potrebitelia sa "vidimo"
po-burzi, dori kogato sistemata e znachitelno
po-natovarena.
Vhodno/izhodnite (V/I) podsistemi na Linuks sushto
preturpiaha znachitelni promeni
pozvoliavashti im da reagirat po-burzo pri vsiakakuv vid
natovarvane. Tezi promeni vklyuchvat
iztsialo prenapisvane na V/I prevklyuchvatel na zadachite, kodut
na iadroto koito opredelia
koi protsesi i koga imat pravo da chetat ot ustroistvata.
Novonapisaniiat sloi sega po-dobre
se spravia s podsiguriavaneto na tova, che nikoi protses ne
ostava blokiran, chakaiki reda
si za prekaleno dulgo vreme, dokato vse oshte pozvoliava na
po-starite optimizatsii da rabotiat
osiguriavaiki cheteneto na danni vse pak da stava po
nai-efikasniia nachin za prilezhashtiia
harduer.
Ot strana na prilozhniia softuer drugata promiana, koiato shte
napravi Linuks programite
po "otzivchivi" (ako te izpolzvat tazi vuzmozhnost) e
poddruzhkata na novite futeksi "futexes"
(ili "Fast User-Space Mutexes" - burzi muteksi v
potrebitelskoto prostranstvo)
Tova e nachinut po koito mnozhestvo protsesi ili nishki mogat
da serializirat i podrediat
subitiiata taka, che da ne se prepuvat edin drug (sustoianie
na "konkurentnost").
Za razlika ot traditsionnite operatsii s muteksi koito
povecheto biblioteki raboteshti s nishki
poddurzhat, tazi ideia e chastichno bazirana na vuzmozhnostite
na iadroto (no samo pri razreshavane na
spornite sluchai), tia sushto poddurzha i nastroivane na
prioritetite koito razreshavat na
prilozheniiata i nishkite s po-visok prioritet dostup do
spornite resursi predi vsichki
ostanali. Razreshavaiki na programata da prioritizira
izchakvashtite zadachi, prilozheniiata
mogat da budat napraveni po-otzivchivi v sinhroniziraneto na
kritichnite oblasti.
V dobavka kum vsichko spomenato po-gore, napraveni sa i
reditsa drugi po-malki
promeni, koito shte podobriat interaktivnostta i
proizvoditelnostta v mnogo sluchai.
Tova vklyuchva oshte premahvane na zaklyuchvaneto na iadroto
t.nar. "Big Kernel Lock"
(tova sa globalni /edrozurnesti: non-fine-grained/
zaklyuchvaniia koito biaha upotrebiavani v
rannite dni na mnogoprotsesorna poddruzhka na Linuks),
optimizatsii na failovata sistema:
predvaritelno chetene, otlozhen zapis, obrabotka na malki
failove i drugi shodni promeni.
Drugi podobreniia
Linuks, kakto i dvizhenieto za Otvoren Kod vinagi sa bili
znamenostsi na flaga za
polzata ot otvorenite standarti. Druga osnovna promiana vuv
versiia 2.6 e, che vutreshnata
infrastruktura na iadroto za poddruzhka na nishki beshe
prenapisana za da razreshi Native POSIX
Thread Library (NTPL) (bibliotekata za rabota s chisti POSIX
nishki) da raboti vurhu nego.
Tova mozhe da bude goliamo podobrenie v skorostta za Pentium
Pro i po-dobri protsesori
pri mnogonishkovite prilozheniia za koeto mnogo ot vurhovite
igrachi v "korporativnoto"
prostranstvo nastoiavat. (Vsushtnost RedHet veche e prehvurlila
obratno tazi poddruzhka
v Linuks 2.4 i ia vklyuchva zapochvaiki s RedHat 9 i Advanced
Server 3.0) Tazi promiana
vklyuchva novite idei v sferata na Linuks nishkite
vklyuchitelno i pri grupi ot nishki, lokalnata
pamet za individualni nishki, signali v stil POSIX i drugi
promeni.
Edna ot osnovnite spunki e, che prilozheniia (kato napr. niakoi
versii Java na Sun),
koito ne sa napisani spored spetsifikatsiite i razchitashti na
stari Linuks-izmi shte se
provaliat pri razreshavane na novite vuzmozhnosti. Tui kato
polzite previshavat mnogo
"tsenata" (a i s tolkova mnogo golemi igrachi v igrata),
predelno iasno e, che nai-vazhnite
prilozheniia shte poddurzhat tezi promeni mnogo skoro sled
izlizaneto na novoto iadro.
Modulnata podsistema i obobshteniia model za
ustroistvata
Posledovatelno v suvremennite operatsionni sistemi
podsistemite za rabota s ustroistvata
ovladiaha novi visoti vuv forsiraneto im da se spraviat s
bezbroi vutreshni i vunshni tipove
shini i vse poveche ustroistva ot razlichni proizvoditeli.
Togava ne biva da ni uchudva,
che predstoiashtoto obnoviavane na Linuks iadroto shte vklyuchva
podobrena poddruzhka kakto v
zarezhdashtiia modulite softuer taka i vuv vgradenoto mu
razpoznavane na harduera. Tezi promeni
varirat ot chisto kozmetichni (draivernite moduli sega
izpolzvat razshirenie ".ko" za "kernel
object"-obekt na iadroto vmesto prosto ".o") do pulna
prerabotka na obobshteniia model za
ustroistvata. Prez vsichki tezi promeni se nabliaga na
stabilnostta i po-dobroto razbirane
i obhvashtane na ogranicheniiata ot predishnata versiia.
Tochno v podsistemata za upravlenie na modulite (za
rabota s ustroistvata) sa napraveni
niakolko osnovni promeni za podobriavane stabilnostta.
Protsesut za svaliane na modulite
beshe malko promenen za da namaliat sluchaite kudeto ima
vuzmozhnost moduli vse oshte da budat
izpolzvani dokato se pravi opit te da budat svaleni ot
pametta, chesto predizvikvaiki
sriv na sistemata. Za sistemi koito ne mogat da budat
izlagani na podoben risk sega
veche e vuzmozhno da bude zabraneno svalianeto na moduli ot
pametta iztsialo. V dopulnenie,
polozheni sa znachitelni usiliia da se standartizira protsesa
chrez koito modulite opredeliat
i obiaviavat kakuv harduer poddurzhat. V predishnite versii na
Linuks modulut triabva da
"znae" kakvi ustroistva poddurzha, no tazi informatsiia ne be
obshtodostupna izvun samiia modul.
Tazi promiana shte pozvoli na softuera za upravlenie na
harduer kato napr. "kudzu"
na RedHat da praviat smisleni predpolozheniia dori za harduer
koito inache ne biha razpoznali.
Razbira se v sluchai, che Vie znaete po-dobre ot tekushtata
versiia na draivera kakvo
podurzha toi, vse oshte e vuzmozhno da forsirate draivera da se
opita da raboti s opredeleno
ustroistvo.
Osven zarezhdaneto na moduli, modelut za rabota s
ustroistva sushto preturpia znachitelni
promeni v obnovenata versiia na iadroto. No, za razlika ot
zarezhdacha na moduli, koito
prosto triabva da se grizhi za opredeliane na resursnite
iziskvaniia na novopoiaviliia
se harduer, to modelut za rabota s ustroistva e s
po-zadulbochena kontseptsiia, koiato
e otgovorna za tseliia harduer v sistemata. Versiite na
Linuks ot 2.2 i po-ranni imaha
suvsem oskudna poddruzhka na obobshteniia model za rabota s
ustroistvata, predpochitaiki
vmesto tova prosto da ostaviat tsialoto razpoznavane na
harduera na modulno nivo. Tova
raboteshe dobre, no za da izpolzvame vsichki vuzmozhnosti na
suvremenniia harduer (osob. ACPI)
sistemata ima nuzhda da znae poveche ot tova kakvi resursi
izpolzva ustroistvoto: ima nuzhda
da znae neshta kato - napr. kum koia shina e zakacheno, kakvi
podustroistva ima, sustoianie na
zahranvaneto, dali mozhe da se prenastroi da izpolzva drugi
resursi v sporni sluchai i
dori da znae za ustroistva chiito moduli oshte ne sa zaredeni.
Linuks 2.4 razshiri tazi ideia
i stana purvoto izdanie koeto uednakvi interfeisite za PCI,
PC Card i ISA Plug-and-Play
shini v edinna struktura na ustroistvata s obsht interfeis.
Linuks 2.6, chrez novata si
sistema obekti na iadroto kernel object ("kobject")
subsystem izvezhda tova na edno
novo nivo ne samo razshiriavaiki poznanieto za vsichki
ustroistva v sistemata, no sushto taka
i osiguriavaiki tsentraliziran interfeis, koito ne samo
upravliava vazhni drebni detaili
kato broi na prepratkite (reference counting), no i
predostavia tazi informatsiia chrez
nov prilozhen interfeis (API), kakto vutre v iadroto taka i
navun v potrebitelskoto prostranstvo.
Sega, kogato ima v nalichnost znachitelen obem informatsiia
za harduera vutre v iadroto,
tova pozvoliava na Linuks po-dobra poddruzhka vuzmozhnostite
na suvremennite nastolni
i prenosimi kompyuturni sistemi, koito iziskvat mnogo
po-zadulbocheno poznanie za harduera.
Nai-ochevidnoto prilozhenie za tova e v narastvashtoto
razprostranenie na t. nar. "hot plug"
ustroistva kato PC Cards, USB, Firewire i hot-plug PCI.
Vupreki che sega e trudno da se vurnem
chak tolkova nazad, Linuks ne predlagashe istinska poddruzhka
za tezi ustroistva predi
iadra 2.2. Tui-kato poddruzhkata na "hot-plug" veche e
po-skoro pravilo a ne izklyuchenie
mnogo e udachno, che nova infrastruktura na ustroistvata
znachitelno eliminira razlikite
mezhdu "hot-plug" i standartnite ustroistva. Sled kato
podsistemata na iadroto ne
pravi direktna razlika mezhdu ustroistvo otkrito po vreme na
zarezhdane ot drugo otkrito
po-kusno, znachitelna chast ot infrastrukturata za rabota s
ustroistva dobaviani po
vreme na izpulnenie beshe oprostena. Drugata osnovna dvizheshta
sila na tazi naskoro
prenapisana podsistema e v podobrenata poddruzhka na
upravlenie na zahranvaneto.
Noviiat standart za upravlenie na zahranvaneto v poslednite
godini, narechen ACPI -
"Advanced Configuration and Power Interface", purvonachalno
be poddurzhan v nai-grub vid
ot predishnata versiia na iadroto. Za razlika ot staromodniia
APM ("Advanced Power Management"),
OS raboteshti na sistemi s noviia interfeis sa dluzhni
individualno da uvedomiat vsichki
suvmestimi ustroistva che te triabva da preminat v drugo
sustoianie (b. pr. na zahranvaneto - napr.
v rezhim s ponizhena konsumatsiia). Bez tsentralizirano poznanie
za harduera bi bilo
nevuzmozhno iadroto da znae s koi ustroistva triabva da se
suglasuvat promenite i v kakuv red.
Vupreki, che tova sa samo dva ochevidni primera, razbira se
sushtestvuvat i drugi oblasti
(napr. proverka i kontrol na harduera) koito shte izvlekat
polza ot tsentraliziranata
kartina na sveta
Poslednoto i veroiatno nai-ochevidno razklonenie na novata
tsentralizirana infrastruktura
e suzdavaneto na nova "sistemna" failova sistema (koiato da
obedini 'proc' za protsesite,
'devfs' za ustroistvata i 'devpts' za UNIX98
psevdo-terminalite) narechena 'sysfs'.
Tazi failova sistema (predvidena da bude montirana na
'/sys') e vidimo izobrazhenie na
durvoto na ustroistvata taka kakto iadroto go vizhda (s niakoi
izklyucheniia). Tova predstaviane
obiknoveno vklyuchva reditsa izvestni atributi na otkritite
ustroistva, vklyuchitelno
imeto na ustroistvoto, negovite IRQ i DMA resursi,
sustoianie na zahranvaneto i dr.
podobni. Obache edin aspekt na tazi promiana mozhe da bude
oburkvasht v kratkosrochen plan -
mnogo ot spetsifichnite upotrebi na ustroistva ot "/proc/sys"
direktoriia mozhe bi shte
budat premesteni v tazi nova failova sistema. Tazi promiana
(vse oshte) ne se prilaga
posledovatelno, taka che mozhe bi shte produlzhi da sushtestvuva
izvesten period na nastroika.
Poddruzhka na sistemen harduer
S dvizhenieto na Linuks napred i navlizaneto mu v
svetlinata na prozhektorite,
s vsiaka sledvashta stupka novoto iadro be mnogo po-dobro ot
predishnoto vuv vidovete ustroistva
koito mozhe da poddurzha kakto za izgriavashtite tehnologii (USB
v 2.4) taka i za stari "nasledstveni"
tehnologii (MCA v 2.2). Dostigaiki do 2.6 obache, broiat
osnovni ustroistva, koito
Linuks ne poddurzha e otnositelno maluk. Sushtestvuvat edva
niakolko, ako izobshto gi ima,
vse oshte neovladeni osnovni diala ot harduernata vselena na
PK. Poradi tazi prichina
povecheto (no ne vsichki) podobreniia v poddruzhkata na harduer
na i386 se izraziavat v
podobriavane ustoichivostta na sistemata a ne v dobaviane na
novi vuzmozhnosti.
Vgradeni ustroistva
Pochti tolkova vazhni kolkoto protsesora sa i sistemnite
shini, koito svurzvat vsichko
v edno tsialo. Svetut na PK ne strada ot nedostig na takiva
shinni tehnologii, ot nai-starata
ISA (v originalniia IBM PC) do suvremennite vunshni, seriini
i bezzhichni komunikatsionni
shini. Linuks vinagi e bil burz v usvoiavaneto na novi shini i
ustroistva, oshte s navlizaneto
im na potrebitelskiia pazar, no znachitelno po-baven v
usvoiavaneto na tehnologii s otnositelno
slaba upotreba.
Podobreniiata v poddruzhkata ot strana na Linuks na
vgradeni ustroistva sa razprusnati
v shirok spektur. Harakteren primer za burzoto navaksvane na
Linuks e v oblastta
na poddruzhkata na starite ISA ("Industry Standard
Architecture") Plug-and-Play razshireniia.
Linuks ne predlagashe vgradena poddruzhka na PnP vuobshte
predi versiia 2.4. Tazi poddruzhka
be podobrena v predstoiashtoto iadro vklyuchvaiki pulna poddruzhka
na PnP BIOS, baza danni s
imenata na ustroistvata i dr. promeni s tsel po-dobra
suvmestimost. Suvkupnostta ot
vsichki tezi promeni pravi Linuks sega "istinska"
Plug-and-Play OS i tia mozhe da
bude ukazana kato takava v BIOS na mashinata. Drugi sistemni
shini kato MCA ("Microchannel
Architecture" - mikro-kanalna arhitektura) i EISA
("Extended ISA" - razshirena ISA)
sushto biaha obhvanati ot noviia model na ustroistvata
i si suzdavat baza danni s imena na ustroistvata. Na
suvremenniia front Linuks 2.6
izvadi na masata reditsa postepenni podobreniia v svoiata PCI
("Peripheral Component Interconnect" - svurzvashta periferni
komponenti)
podsistema vklyuchitelno podobren Hot-Plug PCI i upravlenie
na zahranvaneto, poddruzhka za
mnozhestvo AGP ("accelerated graphics ports" - Uskoreni
grafichni portove -- otdelno
visokoskorostno razshirenie na PCI shinata), i dr. promeni. I
nakraia, v dobavka kum vsichki
"realni" shini, Linuks 2.6. vutreshno dobavi i ideiata za
"sistemna" shina, koiato e
spetsifichna za vsiaka arhitektura i sudurzha vsichki
predpolagaemi ustroistva, koito
ochakvate da otkriete tam. Na PK naprimer tova mozhe da
vklyuchva vgradenite serien,
paralelen i PS/2 port -- ustroistva koito sushtestvuvat no ne
se predstavliavat ot nikoia realna
shina v sistemata. Tazi poddruzhka mozhe da iziskva po-slozhna
rabota (napr. zapitvane
kum harduera) pri niakoi platformi, no obiknoveno tova e
samo obvivka osiguriavashta obrabotkata
po standarten nachin na vsichki ustroistva ot noviia draiveren
model.
Vunshni ustroistva
Vupreki che e viarno, che po-starite vidove shini za
upravlenie na vgradenite ustroistva
niamat mnogo novi vuzmozhnosti na tozi etap na razrabotka,
tova ne mozhe da se kazhe
za novite vunshni ustroistva. Veroiatno nai-vazhnata promiana v
tazi sfera e novata
poddruzhka na USB 2.0 ustroistva. Tezi ustroistva, obshto
oboznachavani kato "visoko-skorostni"
USB ustroistva, poddurzhashti skorosti na obmen do 480
megabita v sekunda, sravneno s
12 mbit/sec na segashnite USB. Srodniiat nov standart USB
On-the-Go (ili USB OTG),
(point-to-point) ot tochka-do-tochka variant na USB protokola
za svurzvane na
ustroistva direktno edno s drugo (napr. da svurzhem tsifrova
kamera kum printer bez
da imame PK po sredata), ne se poddurzha v Linuks 2.6.
(Krupki za tazi vuzmozhnost
sushtestvuvat, no vse oshte ne sa se vleli v ofitsialnata
versiia). Dopulnitelno kum poddruzhkata
na tezi ustroistva, be reviziran nachinut po koito te se
izbroiavat vutreshno, taka che
veche e vuzmozhno da imame mnogo poveche ustroistva ot edin
tip i vsichki te da budat
dostupni pod Linuks. V dobavka kum golemite promeni imame i
edno nabliagane v tozi tsikul
na razrabotka vurhu oprostiavane, stabilnost i suvmestimost,
koito shte podobriat poddruzhkata
na USB ustroistvata za vsichki Linuks potrebiteli.
Ot druga strana, Linuks 2.6 za pruv put vklyuchva
poddruzhka, pozvoliavashta
Linuks mashina da bude USB ustroistvo vmesto USB host. Tova
shte pozvoli napr. vashiiat
PDA pod Linuks da bude vklyuchen vuv vashiia PK i te da si
komunikirat izpolzvaiki podhodiashtiia
protokol. Mnogo ot tazi poddruzhka e nova, no tova e vazhna
nasoka za Linuks pri
vgradenite ustroistva.
Bezzhichni ustroistva
Bezzhichnata tehnologiia postigna vidim napreduk v
poslednite niakolko godini. CHesto
ni se struva, che kabelite (osven zahranvashtite... mozhe-bi?)
shte ostanat v minaloto
prez sledvashtite niakolko godini. Bezzhichnite ustroistva
obhvashtat kakto mrezhovi ustroistva
(nai-shiroko razprostraneni v momenta) taka i ustroistva s
obshta upotreba kato PDA i dr.
V sferata na bezzhichnite mrezhi, ustroistvata mogat da
budat razdeleni na takiva s
dulug obhvat (napr. AX.25 ustroistva za amatüori
radiolyubiteli) i s kus-obhvat (obiknoveno
802.11, no sushtestvuvat i niakoi po-stari protokoli).
Poddruzhkata i na dvata vida be
otlichitelna cherta na Linuks oshte ot rannite mu dni (versiia
1.2) i dvete podsistemi
biaha obnoveni pri razrabotvaneto na 2.6. Nai-mashtabnata
promiana tuk e, che osnovnite komponenti
na kuso-obhvatnata sistema za razlichnite vidove poddurzhani
karti i protokoli se vlia
v edinnata "bezzhichna" podsistema i programen interfeis
(API).
Tova slivane razreshava red drebni nesuvmestimosti v nachina
po koito se obrabotvaha
ustroistvata i ukrepva poddruzhkata ot Linuks na
podsistemata, suzdavaiki obsht nabor
potrebitelski instrumenti, koito da rabotiat s vsichki
poddurzhani ustroistva.
Osven obiknovenata standartizatsiia, Linuks 2.6 vuvezhda
reditsa obshti podobreniia vklyuchvashti
podobrena sposobnost za izvestiavane v sluchai na promiana v
sustoianieto (napr. kogato
ustroistvoto e v t.nar. "bluzhdaeshto sustoianie -"roaming"
state) i promiana v TCP pozvoliavashta
po-dobra obrabotka na periodichnite vremezakusneniia koito se
sreshtat pri bezzhichnite ustroistva.
Poradi natiska za po-dobra poddruzhka na bezzhichnite
ustroistva pod Linuks 2.4, mnogo
ot tezi promeni veche gi ima v tekushtoto iadro.
Pri bezzhichnite ustroistva s obshto prilozhenie ima shodni
podobreniia. IrDA
(infracherveniia protokol krusten na Infrared Data Associates
grupata)
ima niakoi podobreniia sled poslednata mu glavna versiia kato
upravlenie
na zahranvaneto i integratsiia v noviia draiveren model na
iadroto. Istinskiiat napreduk
be napraven v obezpechavaneto poddruzhka na Bluetooth
ustroistva v Linuks. Bluetooth
e nov bezzhichen protokol, proektiran da e kuso-obhvaten i s
niska moshtnost, no bez da ima
ogranicheniia horizont na deistvie na IrDA. Bluetooth kato
protokol e proektiran da
dostiga "navsiakude" i be realiziran v ustroistva kato PDA,
kletuchni telefoni,
pechatashti ustroistva i po stranni neshta kato avtomobilno
oborudvane. Protokolut se sustoi ot
dva razlichni tipa vruzki za obmen na danni: SCO -
"Synchronous Connection Oriented" -
Orientiran kum Sinhronni Vruzki, podhodiasht za audio
prilozheniia i L2CAP, or "Logical Link Control and
Adaptation Protocol" - Protokol za Logichesko Upravlenie na
Vruzkata i Adaptatsiia (PLUVA),
za po-zdravi vruzki poddurzhashti pre-predavane i dr. L2CAP
protokola ot svoia strana
poddurzha raznoobrazni pod-protokoli (vklyuchvashti RFCOMM za
rabota v mrezha tip ot tochka-do-tochka/
"point-to-point" i BNEP za Eternet). Poddruzhkata v Linuks
za neshtata koito Bluetooth mozhe,
produlzhava da raste i nie mozhem da ochakvame tova da suzree
znachitelno shtom oshte novi
ustroistva popadnat v rutsete na potrebitelite. Triabva da
otbelezhim, che purvonachalnata
poddruzhka na Bluetooth beshe vgradena v po-kusnite izdaniia
na 2.4 iadroto.
Poddruzhka na blokovite ustroistva
SHini za suhranenie na danni
Posvetenite shini za suhraniavane na danni, kato IDE/ATA
("Integrated Drive
Electronics/Advanced Technology Attachment") i SCSI ("Small
Computer System Interface"),
sushto poluchiha po-osnovno obnoviavane pri 2.6. Nai-glavnite
promeni sa obedineni okolo
IDE podsistemata, koiato be prenapisvana (i prenapisvana
otnovo) pri razrabotkata na
novoto iadro, razreshavaiki mnogo problemi s nadgrazhdaneto i
drugi ogranicheniia. Naprimer
IDE CD/RW - kompakt disk zapisvashtite ustroistva mogat da
pishat direktno chrez IDE draivera,
edna mnogo po-izchistena ot predi realizatsiia. (Predi beshe
zadulzhitelno da se izpolzva
spetsialen emulirasht SCSI draiver, koeto be oburkvashto i chesto
trudno). V dopulnenie
be dobavena nova poddruzhka za visoko-skorostni Seriini ATA
(S-ATA) ustroistva, koito
imat skorost na obmen nadhvurliashta 150 MB/sec. Otkum SCSI
sushto biaha napraveni mnozhestvo
malki promeni razprusnati iz sistemata kakto za razshirena
poddruzhka taka i za nadgrazhdane.
Harakterno podobrenie za po-starite sistemi e, che Linuks
veche poddurzha SCSI-2 mnogopistovi
ustroistva koito imat poveche ot 2 LUN na ustroistvo. (b.
pr. LUN -Logical Unit Number
- logicheski nomera na ustroistvo)(SCSI-2 e po-nova versiia
na standarta SCSI
suzdaden okolo 1994 g.). Druga vazhna promiana e tazi, che
Linuks veche mozhe da pribiagva do
probvane za smiana na nositelia podobno na Maikrosoft
Uindous, za po-dobra suvmestimost
s ustroistva, koito ne sledvat napulno spetsifikatsiiata.
Kogato tezi tehnologii se
stabilizirat s techenie na vremeto, sushtoto shte se sluchi i s
tiahnata poddruzhka ot strana
na Linuks.
Vupreki, che ne e shina za suhraniavane na danni, Linuks
vklyuchva poddruzhka za direkten
dostup i do BIOS na novite mashini t.nar. EDD ("Enhanced
Disk Device") BIOS za da opredeli
kak survurut vizhda svoite sobstveni ustroistva. EDD BIOS
sudurzha informatsiia za vsichki
shini za obmen na danni zakacheni kum sistemata koito BIOS
razpoznava (vklyuchitelno IDE i SCSI).
V dopulnenie kum subiraneto na konfiguratsionna i dr.
informatsiia ot zakachenite ustroistva,
tova predostavia i niakoi drugi preimushtestva. Naprimer tozi
nov interfeis pozvoliava
Linuks da znae ot koi diskovi ustroistva se e zaredila
sistemata, osobeno polezno
pri novite sistemi, kudeto chesto tova ne e ochevidno. Tova
razreshava inteligentnite
instalatsionni programi da vzemat predvid tazi informatsiia,
opitvaiki se da opredeliat
kude da postaviat programata za nachalno zarezhdane na Linuks
napr. (t.nar. boot loader).
Osven vsichki tezi promeni triabva otnovo da nablegnem i
na fakta, che vsichki vidove shini
(harduerni, bezzhichni i za suhraniavane na danni) se
integriraha v novata podsistema
na modela za rabota s ustroistvata v Linuks. V niakoi sluchai
promenite sa chisto kozmetichni.
V drugi te sa po-znachimi (v niakoi sluchai napr. dazhe
logikata za (reda na) otkrivane
na ustroistvata triabvashe da se promenia).
Failovi sistemi
Nai-ochevidnata upotreba na blokovo ustroistvo v Linuks
(ili druga) sistema e
chrez suzdavane na failova sistema za nego, a poddruzhkata na
failovi sistemi na Linuks
be znachitelno podobrena sled Linuks 2.4 v reditsa otnosheniia.
Klyuchovi sred tezi promeni sa poddruzhkata na razshireni
atributi i kontrol za dostup v
stil POSIX.
Raboteiki sus strogo konventsionalnite Linuks failovi
sistemi vtorata (i tretata)
razshireni ("ext2" i "ext3") failovi sistemi sa sistemite,
koito nai-chesto se asotsiirat s
bazovata Linuks sistema. (ReiserFS e tretata
nai-razprostranena vuzmozhnost.) Tui kato tova
sa failovite sistemi koito vulnuvat nai-mnogo
potrebitelite, suotvetno te sa s nai-mnogo
podobreniia v razrabotkata na Linuks 2.6. Osnovna sred tezi
promeni e poddruzhkata na
"razshireni atributi" ili meta-danni, koito mogat da se
vgrazhdat v samata failova sistema
za spetsifichen fail. Niakoi ot tezi razshireni atributi shte se
polzvat ot sistemata i shte
budat cheteni i pisani samo ot administratora "root". Mnogo
drugi operatsionni sistemi
napr. Windows i MacOS veche se vuzpolzvat ot podoben rod
atributi.
Za zhalost UNIX i proizvodnite i operatsionni sistemi
obiknoveno ne predostaviat dobra
poddruzhka za tezi atributi i mnogo potrebitelski
instrumenti (kato 'tar' napr.) shte
triabva da budat modernizirani za da mogat da zapisvat i
vuzstanoviavat tazi dopulnitelna
informatsiia. Purvoto istinsko prilozhenie na novata
podsistema s razshireni atributi
e v realizatsiiata na (access control lists - ACLs) spisutsi
za kontrol na dostupa v stil POSIX,
edno razshireno podmnozhestvo na standartnite za YUniks prava
za dostup, koito pozvoliavat po fin
kontrol. V dopulnenie kum tezi promeni v ext3 sa napraveni
i niakolko po-malki: vremeto za
suhraniavane na zhurnala na failovata sistema veche mozhe da
bude nastroivano, taka che to da
bude po-podhodiashto za potrebitelite na prenosimi mashini (na
koito mozhe da im se nalozhi da
razvurtiat diska, ako toi e v rezhim za pestene na energiia),
podrazbirashtite se nastroiki
za montirane na ustroistvata veche sushto mogat da budat
suhraneni vuv failovata sistema
(taka, che da ne se nalaga da se predavat po vreme na
montirane na ustroistvata) i veche mozhe
da otbelezhite direktoriia kato "indeksirana" za da uskorite
turseneto na failove v neia.
Izvun tezi promeni, Linuks napravi i reditsa podobreniia
otvun i vutre vuv failovata sistema
s tsel podobriavane suvmestimostta s preobladavashtite
operatsionni sistemi za PK.
Da zapochnem s tova, che Linuks 2.6 veche poddurzha
upravlenieto na logicheski diskove pod
Uindous (tui nar. "Dinamichni diskove"). Tova e nova shema
za razpredeliane na tablitsata
na dialovete na disk, koiato Uindous 2000 ili po-novi
vuzprieha s tsel po-lesno
suzdavane i preorazmeriavane na mnozhestvo dialove. (Razbira
se slabo veroiatno e, che Linuks
sistemite shte izpolzvat skoro tazi shema pri novi
instalatsii.) Linuks 2.6 predostavia i
podobrena (i prenapisana) poddruzhka za failovata sistema
NTFS, kato veche e vuzmozhno
da se montira NTFS dial za chetene/zapis. (Poddruzhkata na
zapis vse oshte e eksperimentalna
i postepenno podobriavana, kato mozhe da bude ili da ne bude
vklyuchena pri okonchatelniia pusk.)
I nakraia, poddruzhkata pod Linuks na FAT12 (failovata
sistema na DOS izpolzvana pri mnogo
stari sistemi i pri rabota s disketi) be podobrena za da se
zaobikoliat greshkite pri niakoi
MP3 pleiuri koito polzvat tozi format. Makar i ne tolkova
preobladavashta na pazara, Linuks
sushto taka predlaga i podobrena suvmestimost s OS/2, chrez
dobaviane na poddruzhka na razshireni atributi
za HPFS failovata sistema. Kakto i pri predishnite izdaniia,
novite dopulneniia na Linuks 2.6
demonstrirat vazhnostta na razbiratelstvoto s drugite i
ukrepva pozitsiiata na Linuks kato
"shveitsarsko dzhobno nozhche" sred operatsionnite sistemi.
V dopulnenie kum tezi izmeneniia, ima oshte reditsa
po-razhvurliani promeni v poddruzhkata na
failovi sistemi ot Linuks. Poddruzhkata na kvoti be
prenapisana za da pozvoliava poddruzhkata
na po-goliam broi potrebiteli v sistemata. Individualnite
direktorii veche mogat da budat
otbeliazvani kato sinhronni, taka che vsichki promeni v tiah
(dopulnitelni failove i t.n.) shte
budat atomarni. (Tova e nai-polezno pri sistemi za el. poshta
i bazi danni razpredeleni v
direktorii, v dobavka kum podobrenata im vuzmozhnost za
vuzstanoviavane pri sriv na diska.)
Prozrachnoto kompresirane (unikalno Linuks razshirenie) be
dobaveno kum ISO9660 failovata sistema
(koiato se izpolzva pri CD-ROM ustroistva.) I nakraia novata
razpolozhena v pametta failova sistema
("hugetlbfs") be suzdadena izklyuchitelno za po-dobrata
poddruzhka na bazi danni razpolozheni v
spodelena pamet.
Poddruzhka na vhod/izhod
Ot "vunshnata" strana na vsiaka edna kompyuturna sistema sa
vhodnite i izhodnite ustroistva,
chastite koito pochti nikoga ne izglezhdat chak tolkova vazhni,
kolkoto v deistvitelnost sa.
Te vklyuchvat ochevidni neshta kato mishki, klaviaturi, zvukovi i
video karti i ne dotam
ochevidni neshta kato dzhoistitsi i pr. Mnogo ot potrebitelskite
podsistemi v Linuks biaha
razshireni v perioda na razrabotka na 2.6, no poddruzhkata na
povecheto obiknoveni
ustroistva be veche napulno razvita. Do goliama stepen
podobreniiata za tezi ustroistva
proiztichat direktno ot podobrenata poddruzhka ot strana na
iadroto na vunshnite shini,
takiva kato Bluetooth bezzhichni klaviaturi i podobni. Tova
obache sa samo chast ot sferite
na mashtabni podobreniia v Linuks.
Ustroistva za vruzka s potrebitelia
Edna osnovna vutreshna promiana v Linuks 2.6 e
prerabotkata na po-goliama chast ot
sloia za vruzka s potrebitelia. Toi e v tsentura na
potrebitelskiia opit s Linuks sistemata
vklyuchvasht: video izhod, mishki i klaviaturi. V novata versiia
na iadroto tozi sloi e
preraboten i razdelen na moduli poveche ot vsiakoga predi.
Sega e vuzmozhno da se suzdade
"obezglavena" Linuks sistema bez vklyuchena kakvato i da e
poddruzhka za monitor i
kakvoto i da e drugo V/I ustroistvo. Osnovnata polza ot
tozi modulen printsip mozhe da bude
pri razrabotchitsite na vgradeni sistemi, suzdavashti
ustroistva, koito mogat da budat
administrirani samo po mrezhata ili prez serien interfeis,
no krainite potrebiteli se
vuzpolzvat ot tova, che mnogo ot osnovnite dopuskaniia za
ustroistvata i arhitekturite
sa na modulen printsip. Naprimer: predi vinagi se priemashe,
che ako imate PK to imate nuzhda
ot poddruzhka na standartniia AT (i8042) klaviaturen
kontroler - novata versiia na Linuks
premahva tova iziskvane, taka che nenuzhniia kod mozhe da bude
durzhan nastrana ot
po-nestandartnite sistemi.
Poddruzhkata na obrabotkata na izhoda kum monitora v
Linuks sushto preturpia red promeni,
vupreki che povecheto ot tiah sa polezni samo v konfiguratsii
izpolzvashti podsistemata na
vgradeniia konzolen kadrovi bufer na iadroto. (Povecheto
Linuks sistemi bazirani na Intel
ne sa konfigurirani po tozi nachin, no tova ne e taka za
mnogo drugi arhitekturi.) Po
moe lichno mnenie nai-harakternata osobenost e, che emblemata
pri zarezhdane (edin sladuk pingvin,
ako nikoga ne ste go vizhdali) veche poddurzha razdelitelna
sposobnost do 24 bita za piksel.
Osven tova drugite novi vuzmozhnosti na konzolata vklyuchvat
promiana na razmera i vurtene
(za PDA i podobni) i razshirena poddruzhka za uskorenie na
poveche harduer.
I nakraia, Linuks veche vklyuchva poddruzhka v iadroto na
zapitvaniia kum VESA
("Video Electronics Standard Association" - Asotsiatsiia za
standartizirane na video
elektronika) monitori za informatsiia za vuzmozhnostite na
ustroistvoto, vupreki che
XFree86 i povecheto distributsii veche pokrivat tozi aspekt v
potrebitelskoto prostranstvo.
V dobavka kum golemite promeni, Linuks vklyuchva oshte red
po-malki promeni pri kontaktuvane s
potrebitelia. Napr. veche se poddurzhat ekranite reagirashti na
dopir (touch screens).
Draiverite za mishka i klaviatura sushto biaha obnoveni i
standartizirani, taka che da
eksportirat edin edinstven vuzel/modul za ustroistvo(to)
(napr. "/dev/input/mouse0")
nezavisimo ot prilezhashtiia harduer ili protokol. Po-osobenite
mishki (napr. tezi s
niakolko koleltsa za prevurtane) veche sushto se poddurzhat.
Razpredelenieto (suotvetstviiata)
na klavishite ot klaviaturata za PK sushto be preraboteno da
sledva Uindous "standarta"
za razshireni klavishi. Poddruzhkata na dzhoistik sushto be
podobrena blagodarenie ne samo na
dobavianeto na mnogo novi draiveri (vkl. igrovata podlozhka
na X Box), no sushto i
vklyuchvaneto na novi vuzmozhnosti kato usilena obratna vruzka
(force-feedback).
I posledno (no ne po vazhnost), novata versiia sushto vklyuchva
poddruzhka za brailoviia chetets
na Taimun Voiadzhur (Tieman Voyager braille TTY device)
pozvoliavasht na slepi potrebiteli
po-dobur dostup do Linuks. (Tazi vuzmozhnost e tolkova
vazhna, che tia veche e prehvurlena
obratno na Linuks 2.4).
Kato dopulnitelna belezhka, Linuks sushto promeni i
interfeisa za "sistemni zaiavki"
s tsel po-dobra poddruzhka na sistemi bez lokalna klaviatura.
Interfeisut za sistemno
zapitvane ("sysrq") e metod za sistemnite administratori na
lokalnata konzola da poluchat
informatsiia za testvane i nastroika (debugging information),
da restartirat sistemata
prinuditelno, da de- i re- montirat failovi sistemi samo za
chetene, i da praviat i dr.
fokusi. Ot Linuks 2.6 nasam se poddurzha i napulno
"obezglavena" sistema, sega veche e
vuzmozhno da predizvikvate tezi subitiia izpolzvaiki /proc
failovata sistema. (Razbira
se, ako sistemata Vi zavisne a Vie iskate da ia nakarate da
vurshi rabota, tova niama
da Vi bude ot osobena polza).
Audio i multimediia
Edna ot nai-dulgoochakvanite novi vuzmozhnosti na Linuks
2.6 za nastolnite potrebiteli
e vklyuchvaneto na ALSA ("Advanced Linux Sound Architecture")
vmesto starata zvukova sistema.
Po-starata sistema poznata kato OSS ili "Open Sound System"
sluzhi dobre na Linuks
oshte ot nai-rannite mu dni, no imashe mnogo arhitekturni
ogranicheniia. Purvoto goliamo
podobrenie v sistemata e, che tia e proektirana ot samoto
nachalo da bude SMP i
nishkovo obezopasena, popraviashta problemite s mnogo ot
starite draiveri, tam kudeto
te ne biha rabotili pravilno izvun ochakvanata
"nastolna-znachi-ednoprotsesorna" paradigma.
Po-vazhnoto e, che draiverite sa proektirani da budat modulni
ot samoto nachalo (potrebitelite
na po-stari versii Linuks shte si spomniat, che tozi modulen
printsip be vgraden v zvukovata
sistema oshte ot Linuks 2.2 nasam) i tova pozvoliava podobrena
poddruzhka na sistemi s
niakolko zvukovi karti, vklyuchitelno karti ot razlichen tip.
Vupreki vutreshnata i krasota,
sistemata niama da e goliamo podobrenie za krainiia-potrebitel
ako ne vklyuchva niakoi
privlekatelni i kreshtiashti novi vuzmozhnosti, a novata zvukova
sistema ima dosta takiva.
Klyuchovi sred tiah sa poddruzhkata na nov harduer (vklyuchitelno
USB audio i MIDI ustroistva),
dvuposochni (full-duplex) zapis i vuzproizvezhdane, harduerno
i neprekusnato miksirane,
poddruzhka na "smesvashti" zvukovi ustroistva i dr. podobni.
Nezavisimo dali ste audiofil
ili prosto obichate da slushate MP3-ki, podobrenata poddruzhka
za zvuka v Linuks e edna stupka
napred v pravilnata posoka.
Osven obiknoveno audio, tova koeto potrebitelite iskat
dnes e poddruzhkata na
naistina raznoroden harduer kato ueb kameri, radio i TV
adaptori i tsifrovi video
rekorderi. I v trite sluchaia poddruzhkata v Linuks be
podobrena v 2.6. Dokato Linuks
ima poddruzhka (v po-goliama ili po-malka stepen) za radio
karti ot dosta otdavna, to
poddruzhkata na TV tuneri i video kameri be dobaven prez
poslednite edna-dve osnovni
versii. Tazi podsistema izvestna kato (Video-3a-Linuks)
Video4Linux (V4L) be osnovno
podobrena v etapa na razrabotka na novata versiia na iadroto
vklyuchvashto razchistvane
na programniia i interfeis (API) i poddruzhka na poveche
funktsionalni vuzmozhnosti na kartite.
Noviia programen interfeis ne e suvmestim sus stariia i
prilozheniiata koito vse oshte go
poddurzhat triabva da budat obnoveni zaedno s iadroto. V
suvsem druga nasoka Linuks 2.6
vklyuchva vgradena poddruzhka na harduer za tsifrovo
video-razpruskvane (Digital Video
Broadcasting -DVB). Takuv tip harduer, chesto sreshtan pri
konfiguratsii ot visok klas
mozhe da bude izpolzvan za da prevurne Linuks survur v
Tivo-podobno ustroistvo
(Tivo-like device), chrez izpolzvane na podhodiashtiia
softuer.
Softuerni podobreniia
Rabota v mrezha
Vurhovata mrezhova infrastruktura na Linuks vinagi e bila
edno ot osnovnite mu
predimstva. Linuks kato OS veche poddurzha povecheto ot
preobladavashtite mrezhovi protokoli
vklyuchitelno TCP/IP (v4 i v6), AppleTalk, IPX i dr.
(Edinstveniia nepoddurzhan takuv
koito mi idva naum e staromodniiat i zapleten NetBEUI
protokol na IBM/Microsoft). Kakto
mnogo ot promenite v drugite podsistemi, povecheto promeni v
mrezhoviia harduer v Linuks 2.6
sa "pod kapaka" i ne sa tolkova ochevidni. Tova vklyuchva
promenite na nisko nivo s tsel
vuzpolzvane ot noviia model za rabota na ustroistvata i
obnoviavane na mnogo ot draiverite
na ustroistva. Napr. Linuks veche vklyuchva otdelen interfeis
MII (Media Independent Interface
ili IEEE 802.3u), podsistema koiato se polzva ot reditsa
draiveri na mrezhovi ustroistva.
Tazi nova podsistema e zamestitel v mnogoto sluchai kogato
vseki draiver obrabotvashe
poddruzhkata na MII po malko po-razlichen nachin, s tsenata na
dosta povtariasht se kod i usiliia. Drugite
promeni vklyuchvat osnovno obnoviavane na ISDN i t.p.
Ot strana na softuera, edna ot nai-golemite promeni e
poddruzhkata v Linuks na
IPsec protokoli. IPsec ili IP Security e nabor protokoli za
IPv4 ("normalniia" IP)
i IPv6 koito pozvoliavat kriptografska sigurnost na nivo
mrezhovi protokol.
A sled kato sigurnostta e na protokolno nivo, prilozheniiata
ne e nuzhno da budat izrichno
zapoznati s tova. Tova e podobno na SSL i drugite
tunelizirashti/sigurni protokoli,
no na mnogo po-nisko nivo. Poddurzhanoto v momenta v iadroto
kriptirane vklyuchva razlichni
raznovidnosti na SHA ("secure hash algorithm"), DES ("data
encryption standard") i dr.
Oshte po protokolnata chast, Linuks podobri svoiata
poddruzhka za mrezhi s mnozhestveno
razpruskvane (multicast networks). Tova sa mrezhi, v koito
edin edinstven izpraten paket
e prednaznachen da bude poluchen ot mnozhestvo kompyutri. (V
sravnenie s traditsionnite
mrezhi tip tochka-do-tochka, kudeto vruzkata vinagi e edno kum
edno). Osnovno tazi
funktsionalnost se izpolzva ot sistemi za obmen na suobshteniia
(napr. Tibco) i audio/video
konferenten softuer. Linuks 2.6 podobri tova, chrez
poddruzhkata na novite SSM
(Source Specific Multicast) protokoli, vklyuchitelno MLDv2
(Multicast Listener Discovery)
i IGMPv3 (Internet Group Messaging Protocol.) Tova sa
standartni protokoli poddurzhani
ot povecheto proizvoditeli na harduer ot visok klas, takiva
kato Cisco.
Linuks 2.6 sushto taka izvadi i otdelen LLC stek.
Protokolut LLC -Logical Link Control
(IEEE 802.2) e protokol na nisko nivo rabotesht pod niakolko
mrezhovi protokola ot visoko
nivo, kato NetBeui na Maikrosoft, IPX i AppleTalk. Kato
chast ot tazi promiana, draiverite
za IPX, AppleTalk, i Token Ring biaha prenapisani za da se
vuzpolzvat ot predimstvata
na novata obshta podsistema. V dopulnenie, ot vunshen iztochnik
be sgloben rabotesht NetBEUI
stek i ostava da se vidi samo dali toi shte bude integriran v
gotovoto iadro.
V dopulnenie kum tezi biaha napraveni i mnozhestvo
po-malki promeni. IPv6 preturpia
niakoi osnovni promeni i veche mozhe da raboti s mrezhi Token
Ring. Poddruzhkata v Linuks
na NAT/maskirane be razshirena za po-dobra obrabotka na
protokoli iziskvashti mnozhestvo
vruzki (H.323, PPTP, i t.n.) Ot glednata tochka na
Linuks-kato-marshrutizator, poddruzhkata
za konfigurirane na VLAN pod Linuks veche ne e
"eksperimentalna".
Mrezhovi failovi sistemi
Opirashta se na zdravata poddruzhka na mrezhovi protokoli v
Linuks e i ednakvo dobrata
poddruzhka na mrezhovi failovi sistemi. Montiraneto (poniakoga
i eksportiraneto) na
mrezhova failova sistema e edna ot redkite mrezhovi operatsii
na visoko nivo, koito
iadroto izvurshva direktno. (Drugata nai-ochevidna, "mrezhovoto
blokovo ustroistvo",
ne preturpia mnogo promeni v 2.6 i obiknoveno se upotrebiava
v spetsializirani prilozheniia,
kudeto obiknoveno biva izpolzvano podobno na obiknovena
failova sistema.) Vsichki drugi
mrezhovi operatsii sa prehvurleni po vzaimno suglasie v
potrebitelskata sfera i izvun
oblastta na razrabotchitsite na iadroto.
V sveta na Linuks i UNIX-kloningite, nai-chesto sreshtanata
ot mrezhovite failovi sistemi
e umestno imenuvana Network File System ili NFS. NFS e
slozhen protokol za obmen na
failove, s dulboki koreni v UNIX (i po-spetsialno v
prekrasnata mu realizatsiia v Solaris na Sun).
Osnovniiat transporten protokol mozhe da izpolzva vseki edin
ot TCP ili UDP, no sushto
taka sa mu neobhodimi niakolko dopulnitelni protokola, vseki
ot koito raboti vurhu
otdelen RPC ("remote procedure call" - za izvikvane na
otdalechena funktsiia) protokol.
Te vklyuchvat otdelen protokol za "montirane", za proverka za
avtentichnost i NLM
("network lock manager") za zaklyuchvane na failove.
(Obiknoveno realizatsiiata mu e sushto
zdravo svurzana s drugi obshti RPC-bazirani protokoli,
vklyuchitelno NIS-- "network
information service"-- za proverka za avtentichnost. NIS i
negovite naslednitsi ne sa
chesto izpolzvani za proverka na avtentichnost v Linuks
mashini poradi negovata nesigurnost).
Mozhe bi imenno poradi tazi mu slozhnost NFS ne be shiroko
vuzpriet kato "internet"
protokol.
V Linuks 2.6, tazi osnovna failova sistema preturpia
mnogo promeni i podobreniia.
Nai-goliamo ot koito e eksperimentalnata poddruzhka na novata
i oshte ne vuzprieta shiroko
versiia na NFSv4 protokola v dvete mu realizatsii - klientska
i survurna. (Predishnite
versii na Linuks vklyuchvaha poddruzhka samo za versii 2 i 3
na protokola).
Novata versiia poddurzha po-sigurna i po-dobra avtentichnost
(s kriptografiia),
po-inteligentno zaklyuchvane, poddruzhka na psevdo-failovi
sistemi i dr. promeni.
Ne vsichki novi vuzmozhnosti na NFSv4 sa realizirani v
Linuks, no poddruzhkata e otnositelno
stabilna i mozhe da se polzva za niakoi predstavitelni
prilozheniia.
V dopulnenie, realizatsiiata na NFS survur pod Linuks be
podobrena za da bude po-razshiriaema
(do 64 puti poveche potrebiteli ednovremenno i po-golemi
opashki za zaiavki), da bude
po-zavurshena (chrez poddruzhka na uslugi i po TCP, v
dopulnenie kum UDP), da bude
po-ustoichiva (otdelnite draiveri na failovata sistema mogat
da naglasiat nachina po
koito failovete na tezi sistemi se eksportirat, taka che
po-dobre da otgovariat na
tehnite osobenosti) i da bude po-lesno poddurzhana (chrez
upravlenie pod novata 'nfsd'
failova sistema vmesto chrez sistemni iziskvaniia). Osven
tova ima i mnogo drugi promeni
"pod kapaka", v tova chislo razdeliane na lockd i nfsd,
poddruzhka na nulevo-kopirane
po mrezhata vurhu poddurzhanite interfeisi. NFS osven tova
veche e po-lesno da bude
podsigurena chrez razreshavane nomerata na lockd portovete na
iadroto da budat
prisvoiavani ot administratora. Klientskata chast na NFS sushto
se vuzpolzva ot red
podobreniia v realizatsiiata na prilezhashtiia RPC protokol
vklyuchvashti keshirashta infrastruktura,
kontrol na vruzkata po UDP i dr. podobreniia za TCP.
Poddruzhkata pod Linuks na NFS-spodeleni
dialove kato korenna (root) failova sistema (za bezdiskovi
sistemi) sushto be podobrena, kato
iadroto veche poddurzha NFS po TCP za tazi tsel.
V dopulnenie kum podobriavane poddruzhkata za mrezhovite
failovi sistemi YUniks-stil,
Linuks 2.6 predostavia mnogo podobreniia i pri mrezhovite
failovite sistemi v Uindous-stil.
Standartnata failova sistema za spodeliane na resursi pri
Uindous survuri (sushto kakto
i pri OS/2 i dr. operatsionni sistemi) se bazira na SMB
("server message block") protokola
i iadroto na Linuks ima otlichna klientska poddruzhka na SMB
protokola ot dosta versii nasam.
Uindous 2000 obache standartizira vurhu podobreno
podmnozhestvo ot SMB protokola, poznato
kato CIFS ("common internet filesystem.") Namerenieto na
tova osnovno obnovlenie be
da ratsionalizira i usuvurshenstva niakoi aspekti na SMB koito
po onova vreme biaha se
prevurnali v pulna kasha. (Protokolut ne e tochno definiran i
chesto nadstroivan dotam,
che dori ima sluchai kudeto Win95/98/ME versiiata mu e
nesuvmestima s WinNT/Win2k versiiata.)
CIFS produlzhi v tazi nasoka i dobavi poddruzhka na Unikod,
podobreno zaklyuchvane
na failove, tvurdi vruzki, premahna i poslednite sledi ot
NetBIOS zavisimostite i dobavi
niakolko drugi vuzmozhnosti za Uindous potrebitelite.
Tui-kato Linuks potrebitelite
ne obichat da budat durzhani za dulgo na tumno, Linuks 2.6
veche vklyuchva napulno prenapisana
poddruzhka za montirane na CIFS failovi sistemi. Linuks 2.6
veche vklyuchva poddruzhka i
za SMB-UNIX razshireniiata na SMB i CIFS protokolite, koeto
pozvoliava na Linuks da
ima dostup do ne-Uindous failovi tipove (kato vuzli na
ustroistva i simvolichni vruzki)
na SMB survuri koito go poddurzhat (napr. Samba). Makar i ne
chak tolkova chesto sreshtani dnes,
Linuks ne e zabravil napulno i za Novell NetWare
potrebitelite. Linuks 2.6 veche pozvoliava
Linuks klienti da montirat maksimalniia broi ot 256
spodeleni vruzki na NetWare dial
izpolzvaiki vgradeniia si NCP ("NetWare Core Protocol")
draiver na failovata sistema.
Linuks 2.6 oshte vklyuchva i podobrena poddruzhka za
sravnitelno novata oblast na
razpredelenite mrezhovi failovi sistemi, kudeto failovete na
edin logicheski dial mogat
da budat razprusnati vurhu mnozhestvo mrezhovi vuzli. V
dobavka kum failovata sistema CODA
vuvedena s Linuks 2.4, Linuks veche vklyuchva niakakva
poddruzhka i za dve drugi razpredeleni
failovi sistemi: AFS i InterMezzo. AFS - Andrew filesystem
(imenuvana taka zashtoto
be razrabotena purvonachalno v CMU - Carnegie Mellon's
Project Andrew b. pr.), v momenta
e mnogo ogranichena i izvurshva operatsii samo za chetene.
(Po-pulna versiia na AFS s poveche
vuzmozhnosti e nalichna izvun iadroto.) Vtorata nova failova
sistema InterMezzo (sushto
razrabotena ot CMU) sushto se poddurzha za pruv put ot Linuks
2.6, kato tia pozvoliava
po-suvremenni vuzmozhnosti kato otdeliane (disconnect) (taka
che da mozhete da rabotite
nad lokalni /keshirani/ kopiia na dannite) i e podhodiashta za
kritichni prilozheniia koito
triabva da garantirat che hranilishteto za danni im e vinagi na
razpolozhenie t.e. to nikoga
ne e nedostupno (ili podpraveno dokato ne raboti). Osven
tova ima i prilozheniia koito
poddurzhat dannite sinhronizirani mezhdu mnozhestvo kompyutri,
kato prenosimi ili PDA i
nastolniia kompyutur. Mnogo ot proektite predlagashti poddruzhka
na tezi novi vidove failovi
sistemi purvonachalno sa razraboteni pod Linuks, postaviaiki
go dosta napred ot drugite
v poddruzhkata na tezi novi vuzmozhnosti.
Raznoobrazni vuzmozhnosti
Sigurnost
Druga ot golemite promeni v Linuks 2.6 koiato ne poluchava
dostatuchno vnimanie e
goliamoto izobilie ot promeni zasiagashti sigurnostta.
Nai-osnovna sred koito e, che
suvkupnostta podobreniia na sigurnostta bazirana v iadroto
(pravomoshtiiata na
svruh-potrebitelia/administratora v YUniks-podobna
operatsionna sistema) be iznesena
na vunshni moduli za da stane samo edin ot vuzmozhnite
alternativni moduli za sigurnost.
(V momenta obache, edinstveniia predlagan model za sigurnost
e podrazbirashtiiat se i
primer kak da si napravite svoi). Kato chast ot tazi promiana
vsichki chasti na iadroto
biaha obnoveni da izpolzvat "vuzmozhnostite" kato osnova za
po-fin kontrol na potrebitelskiia
dostup, za razlika ot starata sistema sus
"svruh-potrebitelia". Pochti vsichki Linuks sistemi
shte produlzhat da imat "svruh-potrebitel" ("root"), koito ima
pulen dostup, no pozvoliava i
da budat suzdadeni Linuks-podobni sistemi koito ne praviat
takova osnovno dopuskane.
Druga promiana v sigurnostta e che dvoichnite moduli (napr.
draiverite puskani ot
proizvoditelite na harduer) poveche ne mogat da
"prezarezhdat" ("overload") sistemni
izvikvaniia (da gi zamestvat - b.pr.) sus svoi sobstveni i
veche ne mogat da vizhdat i promeniat
tablitsata na sistemnite izvikvaniia (na funktsii ot iadroto).
Tova znachitelno ogranichava razmera na dostup
do iadroto koito modulite s ne-otvoren izhoden kod imat i
veroiatno zapushva i niakoi
pravni vratichki v GPL (GPL). Poslednata promiana doniakude
svurzana sus sigurnostta e,
che Linuks s novoto iadro veche ima vuzmozhnostta da polzva
harduerni generatori na
sluchaini chisla (kato tezi vgradeni v niakoi ot novite
protsesori), otkolkoto da razchita
na (sravnitelno dobrite) bazirani na entropien printsip
sluchaini harduerni fluktuatsii.
Virtualizirane na Linuks
Edna ot nai-interesnite novi vuzmozhnosti v Linuks 2.6 e
vklyuchvaneto na arhitektura
za rabota v "potrebitelski-rezhim". Tova po-sushtestvo e
prehvurliane/port (sushto kakto
i pri razlichna harduerna arhitektura) na Linuks kum samiiat
sebe si, pozvoliavashto
startirane na napulno virtualizirano Linuks-vurhu-Linuks
obkruzhenie. Novoto kopie
na Linuks se startira kato normalno prilozhenie. "Vutre" v
prilozhenieto, mozhete da
konfigurirate fiktivni mrezhovi interfeisi, failovi sistemi
i dr. ustroistva chrez
spetsialni draiveri, komunikirashti nagore s osnovnoto kopie
na Linuks po siguren nachin.
Tova se okaza dosta polezno kakto za tselite na razrabotkata
(profilirane i t.p.) taka
i za analiz na sigurnostta i honeypots (b.pr. honeypot
bukvalno "gurne s med", obik.
za lov na maimuni a v sluchaia i za lov na hakeri - ako se
hvanat. Obiknoveno tova e mrezha koiato
napodobiava i simulira rabotata na istinska sistema v
internet, samo che razpolozhena na
otdelen harduer niamasht nishto obshto s realnata mashina. Tova
pozvoliava bezopasno nablyudenie deistviiata
na potentsialnite hakeri, a poniakoga i zalavianeto im, bez
opasnost za sriv v sistemata).
Dokato povecheto potrebiteli edva li niakoga shte se vuzpolzvat
ot takuv tip poddruzhka,
tova e izklyuchitelno "privlekatelna" vuzmozhnost koiato da si
imate na vashata mashina.
(Vpechatlete priiatelite si!)
Prenosimi kompyutri
V dobavka kum tsialata mnogo-tseleva poddruzhka opisana
dotuk (podobrenite APM i ACPI,
podobreniiata v poddruzhkata na bezzhichni mrezhi i t.n.),
Linuks sushto vklyuchva i dve drugi
vuzmozhnosti koito e trudno da budat klasifitsirani,
ulesniavashti nai-mnogo potrebitelite
s prenosimi kompyutri. Purvata e, che novoto izdanie na
iadroto veche poddurzha napulno
softuerna suspend-to-disk funktsionalnost za Linuks
potrebitelite na put. (b .pr. suspend-to-disk
e vuzmozhnostta na sistemata da premine v rezhim s ponizhena
konsumatsiia na energiia ili
da se izklyuchi napulno ot zahranvaneto, kato predi tova
suhrani tekushtoto si sustoianie
na diska. Pri posledvashto vklyuchvane na sistemata,
sustoianieto i se zarezhda ot diska i vse edno
sistemata nikoga ne e bila izklyuchvana.) Novata versiia sushto
poddurzha i vuzmozhnostite
na novite mobilni protsesori da promeniat skorostta si (i
iziskvaniiata si kum zahranvaneto)
vuz osnova na tova dali sa vklyucheni v el. mrezha ili ne.
Poddruzhka na nasledstvoto ot predishnite versii
Vupreki che Linuks 2.6 predstavliava edno osnovno
obnoviavane, razlikite za prilozheniiata
v potrebitelski rezhim shte budat pochti nezabelezhimi. Edno
vazhno izklyuchenie ot tova
pravilo e v mnogo-nishkovata rabota: niakoi prilozheniia mozhe
da se opitvat da praviat neshta
koito sa rabotili pod 2.4 i 2.2 no veche ne sa pozvoleni.
Obache tezi prilozheniia triabva da
budat po-skoro izklyuchenie ot praviloto. Razbira se
prilozheniiata ot nisko nivo kato
modulnite instrumenti opredeleno niama da rabotiat.
Dopulnitelno, niakoi failove i formati
v /proc i /dev direktoriite sa promeneni i prilozheniiata
imashti podobni zavisimosti mozhe
da ne rabotiat pravilno. (Tova e osobeno vazhno kogato vse
poveche i poveche neshta se prehvurliat
na novata "/sys" virtualna failova sistema. V sluchaia na
"/dev", mogat lesno da budat
konfigurirani obratno-suvmestimi imena na
ustroistvata.)
V dobavka kum tezi standartni oproverzheniia, sushtestvuvat
reditsa drugi po-malki promeni,
koito mozhe da vuzdeistvat v niakoi obkruzheniia. Purvo, mnogo
starite swap failove (ot Linuks 2.0 i
po-ranni) shte triabva da budat preformatirani predi da mogat
da budat izpolzvani s 2.6.
(Tui kato swap failovete ne sudurzhat postoianni danni, tova
ne bi bilo problemno za krainiia
potrebitel.) kHTTPd daemon - protsesut, koito pozvoliava na
iadroto da obsluzhva direktno
zaiavkite za ueb stranitsi sushto be premahnat, kato povecheto
tesni mesta v proizvoditelnostta
spirashti Apache, Zeus, i dr. da dostignat skorostta na
rabota na iadroto biaha razresheni.
Avtomatichnoto otkrivane na DOS/Uindous diskovi menidzhuri
kato OnTrack i EzDrive za poddruzhka
na golemi diskove s po-starite BIOS biaha premahnati. I
nakraia, poddruzhkata za spetsialnite
sektori za purvonachalno zarezhdane na iadroto pri startirane
ot disketa sushto be
premahnata - vmesto tova triabva da izpolzvate SysLinux.
Neshtata v kraia
Tozi dokument be sgloben osnovno ot dulgite chasove
chetene na zhurnalnite failove
na BitKeeper, razglezhdane i igrachka s izhodniia kod, chetene
i izprashtane publikatsii vuv forumite
i mnogo, mnogo tursene s Google i Lycos na dokumentatsiia za
tova i onova. Poradi tova
e vuzmozhno da ima mesta kudeto neshto lipsva ili e pogreshno
shvanato i mesta kudeto
neshto mozhe da bude othvurleno postfaktum. (Az biah
izklyuchitelno vnimatelen s dvete versii
IDE poddruzhka nad koito se raboteshe prez tova vreme, no
sushtestvuvat i dr. primeri.)
Poradi tova che chast ot moite izsledvaniia be izvurshena chrez
razglezhdane na ueb stranitsite
na razlichni proekti v iadroto, az triabvashe da vnimavam
nezavisimite proekti da ne sa
mnogo po-napred s vuzmozhnostite otkolkoto veche vuzprietite
v osnovniia Linuks kod.
Ako otkriete niakakvi greshki v tozi dokument ili iskate da
mi pratite pismo po el. poshta za da
me popitate kak sum dnes, Vie mozhete da go izpratite na
jpranevich <na> kniggit.net.
Dopulnitelna informatsiia za sustoianieto i vuzmozhnostite
na Linuks 2.6 mozhe da namerite
na reditsa mesta v mrezhata. Dzhuliem Bosier poddurzha stranitsa
na http://www.kernelnewbies.org/status
s informatsiia za promenite versiia po versiia. Deiv Dzhouns
sushto poddurzha polu-ofitsialen
spisuk s promenite na http://ftp.kernel.org/pub/linux/kernel/people/davej/misc/post-halloween-2.5.txt.
I dvete mesta v mrezhata izglezhdat malko ostarelichki, no tui
kato minaha tri mesetsa mezhdu
otdelnite mi versii (na tozi dokument), koi sum az che da se
oplakvam?
Nai-novata versiia na tozi dokument vinagi mozhe da bude
namerena na http://kniggit.net/wwol26.html.
Prevodi
Ne govorite angliiski ili bulgarski ezik? Tozi dokument
(ili po-staro izdanie) e preveden na niakolko chuzhdi ezika.
Kitaiski -
http://www-900.ibm.com/developerWorks/cn/linux/kernel/l-kernel26/index.shtml
(Stoun Uang i dr.)
CHeshki - http://www.linuxzone.cz/index.phtml?ids=10&idc=782
(Deivid
Haring)
Frenski - http://dsoulayrol.free.fr/articles/wonderful_2.6.html
(Deivid
Soleirol)
Ungarski -
http://free.srv.hu/b/e/behun/pn/modules.php?op=modload&name=News&file=index&catid=&topic=12
(Uruin Novak) (Vse oshte
nezavurshen).
Portugalski (br) -
http://geocities.yahoo.com.br/cesarakg/wwol26-ptBR.html
(TSezar A. K.
Grosmun)
Sukratena versiia se poiavi i v Germaniia v izdanieto na
spisanie LanLine
ot septemvri 2003 g.
V dobavka moga da kazha, che naviarno sushtestvuvat i
italianska i koreiska versiia,
no pone az ne znam kude sa slozheni. Ako Vie znaete za niakoi
dopulnitelni prevodi,
koito mogat da budat dobaveni kum tozi spisuk, molia da me
uvedomite.
Avtorskite prava zapazeni (C) 2003 Dzhouzef Pranevich.
Razprostranenieto chrez
internet bez modifikatsii e razresheno. Nasurchava se
razprostranenieto i na drug vid
nositeli na informatsiia, no molia purvo mi pratete el. poshta
da obsudim nuzhnite detaili.
Prevodite se okurazhavat - molia pratete mi el. poshta taka che
da moga da pomogna za
koordinatsiiata im.