Ahoj,
můžete doporučit zdroje (cz / en), kde se pojednává o obecně Linuxu. Myslím spíše architekturu, co / kde a jak funguje. Osobně bych potřeboval spíše úvod do této problematiky, ale pokud připojíte něco i pro hlubší znalost, tak budu jedině rád.
TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Ahoj,
můžete doporučit zdroje (cz / en), kde se pojednává o obecně Linuxu. Myslím spíše architekturu, co / kde a jak funguje. Osobně bych potřeboval spíše úvod do této problematiky, ale pokud připojíte něco i pro hlubší znalost, tak budu jedině rád.
Úvod je jediný - nainstalovat a učit se... Když se budeš biflovat teorii, jen se v tom budeš ztrácet. Lepší je snažit se zpovozňovat balíky mimo baíkové systémy, stavět různé konstrukce, procházet zdrojáky,...
Souhlasím, že pouhé biflování není moc platné. Nicméně jsem ve stádiu, kde přes rok Linux aktivně používám (pouze jako uživatel a programátor, něco málo scriptím v shellu a lehce si hraju s nastavením - ale to většinou jen php server, databáze, apache).
Právě bych chtěl něco načerpat i teoretických znalostí - samozřejmě co půjde, tak si chci rovnou zkoušet. Ale při své práci se bohužel moc těsně k Linuxu nedostanu, takže bych potřeboval vědět vlastně co mám dělat - co můžu zkoušet a co se za tím skrývá.
Já jsem poznal Linux za měsíc - za další Unix. A co teprve za rok... Upřímě ti tedy zrovna dvakrát nevěřím. Musíš již znát kernel, principy (vše je soubor, I/O se řeší servery,...) a vůbec - konstru a hierchii.
A pak jedině příméodborné znalosti - jestli chceš, rád ti to vysvětlím od strojových instrukcí... Tedy BIOS tupě přečte prvních 512 byte do RAM a pokusí se spustit to jako úproces, tam pak podle mark a příznaků / uživatelského vstupu dojde k vybrání jednoho z VBR. Pokud je VBR jen jedno - jeden oddíl, pak stačí mít v prvních 512 byte onen VBR. VBR se zase pokusí spustit jako proces. Prvních 78 byte (přibližně) použije jako informace o zařízení (počet sektorů, četnos sektorů, počet hlav, typ FS,...) a většinou je tam načtení kernelu. Kernel si cachuje features (základní funkce) a ty použije k odříznutí se od RT (Real-Time) režimu. Přejde tedy do chráněného - ještě před spuštěním shellu.
Většinou PT režim (protected) začíná po zapsání přerušení 80h do tabulky přerušení - pomocí BIOSového přerušení. Pak se již tedy odřízne od RT režimu a BIOSu. To znamená, že opustí i ty základní funkce - nyní zkompiluje některé vyšší funkce do cache. Dojde k rozbalování jader (vmlinuz a spol. mají několik vrstev) - a začne se mountovat.
Nejdříve se jedná o virtuální sféry - tedy pokud jsi si skutečně neoddělil bin, sys, proc,... Použije se k tomu fstab a mtab. Následně dojde k namountování / spuštění konzolového shellu, spuštěním prvního procesu (démona) - init a pak se spustí shell interpreter. Pak už zbývá jen přečíst soubory označené pro prohledání - bin, sbin, sys, proc,... A různě se propojí, procesy se zeserializují a předpíší do proc atd. Po provedení mnoha takovýchto úkonů - tedy zmapování systému a spol. se init rozvětví již do sposty procesů. Přečtou se soubory které mají informace o procesech, které se mají spustit před dokončením bootování. Pak se spustí soubory určené pro hotový boot. Pak se init pošle žádost o kontrolu FS (mezitím asi tak 3x) a po nějakých dalších úkonech se spustí přihlašovací program. To už shell dostane rúzná I/O atd...
A psát by se o tom dalo hodiny...
Pardon za chyby - tady se by se to vysvětlování docela protáhlo. Mohu-li si dovolit dát sem kontaktní údaje, napiš mi na matesax@gmail.com
#7 liborb
Díky. Je to obecné nebo osobní doporučení?
#6 Matěj Andrle
Asi jsem se pořádně nevyjádřil - "jako programátor" bylo myšleno jako programátor ne-linuxových částí (přesněji PHP a spol.). Pokud to vezmu zpět, tak se v Linuxu pohybuji opravdu jako laik, který pomalu objevuje jeho krásy. Proto mé znalosti Linuxu jsou značně povrchní.
Nicméně děkuji za Tvoji snahu. Pokusím se tyto věci dostudovat a v případě problémů se budu tázat (spíše zde na fóru, třeba to pomůže někomu dalšímu).
#8 Šťouchal
Znám autora a mám i knihu (na dosah ruky :)), takže asi osobní, ale to nic nemění na tom, že je lepší zajít do dobrého knihkupectví, kde ji mají a tam si ji prohlédnout, jestli obsahuje to, co hledáš. V té knize je popsáno co a jak funguje, ale samozřejmě nevím, jestli prahneš zrovna po této sadě informací.
namountování / - to je kořenový adresář - neber to tedy jako nebo...
Ještě to tedy dopopíši:
Master Boot Record - je v disku jen ke správě více partitionů - pro jeden nemá smysl. Volume Boot Record - obsahuje informace o zařízení a navíc obsahuje bootovací sekvenci. Tedy vytahuje různé sektory z disku pomocí přerušení 13h. Nejčastěji se jedná o disk BIOSového označení 80/81h - tedy HDD. Jnak 1 - 4 jsou floppy a USB je bráno někde mezi 52 a 64.
RT režim značí práci s registry. Tedy registr se dá rozdělit do 16bit a 8bitových subregistrů. Dohromady (8 + 8 + 16) mají prostor 32 bit. Tedy ten 32 bit je jeden velký registr s určitou funkcí - EAX je pro práci s řetězci, EBX pro parametrizaci, ECX pro číslování,... Ale ty nížší - 16bit a 8bit využívají jen část z 32bitového registru. To umožňuje ukládat chary do AL registru atd. Vtip je v tom, že takovýto systém pracuje s hodně registry a data jsou tedy hodně roztroušena. Navíc se to blbě organizuje a prostě takto uložená data se blbě spravují. Hiearchie je takováto - EAX - AX - AH/AL. Pro EAX rodinku. AH/AL jsou přímou součástí AX - AX není přímo subregistrem - jen pro představu. AH je vyšší 8bit registr a AL nižší. AH obsahuje krom dat i informační data. Každopádně tento přístup pracuje v reálném čase - přímo se segmenty registrů. Lze pracovat přímo s jednotlivými bity. Chráněný režim využívá plných 32bit. To znamená, že když do EAXu narveš char, tak zbytek registru se vynulluje � znaky. To znamená, že již nepřistupuješ k nižším registrům - data jsou tedy rozdělena do celých registrů. Proto když do 32bit registru přidáš char, neprovede se to přímo - v reálném čase. K vyšším registrům (32/64) se přistupuje se zpožděním... Jak už jsem tu naznačil - 64bit registr je nadstavbou instrukční sady procesorů od roku nevím přesně. Ten tedy umožňuje pracovat najednou s 64bit daty. Tak jako tak lze tedy jednoduše říci, že chráněný režim pracuje s více daty najednou - proto ne v reálném čae - a proto nedochází k ohrožení dat...
A jak jsem psal - psát se o tom dá hodiny i týdny...
Jinak ty 64bit registry mají R - RAX, RBX,...
#9 Matěj Andrle
Offtopic: zvaž prosím registraci - pak po sobě můžeš příspěvky upravovat ;)
Matěje ignoruj.
Pravděpodobně máš v systému man, info a howtos. Já jsem tak začínal a na hooodně dlouho jsem měl co studovat. Pak samozřejmě TLDP.
Tu knihu od Jelínka mám - vyhozené peníze. Jestli si ji chceš přečíst, tak si ji jen někde půjč. Ke kernelu a lowlevel věcem vede poměrně dlouhá cesta.
Proč by mě měl ignorovat? Nemám teoretické znalosti - vše jsem si zjistitl sám - popř. jsem procházel internet. Proto i když znám spoustu knih, těžko bych mohl nějakou doporučit - jen vím, že existují...
Jo a ten prvotní proces - init je jak jsem psal démon. To je proces, co sám nic nedělá - jen čeká na určité události a reaguje na ně vytvořením potomka parametrizivaného daty oné události...
Zjistit počet nových příspěvků
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
































© 2003–2026 Programujte.com