abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 14:33 | Komunita

Nvidia podpoří projekt Common Voice částkou 1,5 milionu dolarů. Mozilla píše o demokratizaci a diverzifikaci hlasové technologie. Nvidia prostě použije otevřenou databázi hlasových záznamů k trénování svého systému Jarvis, viz úvodní přednáška CEO Nvidie Jensena Huanga na NVIDIA GTC 2021.

Ladislav Hagara | Komentářů: 0
včera 09:00 | IT novinky

Tento týden probíhá virtuální konference NVIDIA GTC 2021 (GPU Technology Conference). Doporučit ke zhlédnutí lze úvodní přednášku CEO Nvidie Jensena Huanga. Z kuchyně představil celou řadu novinek (NVIDIA Grace CPU, NVIDIA DRIVE Atlan, AI-Capable Supercomputer Alps, …). Dění na konferenci lze sledovat na Twitteru.

Ladislav Hagara | Komentářů: 3
včera 08:00 | Nová verze

Byla vydána verze 6.0 softwaru pro správu vlastního cloudu OpenNebula (Wikipedie). Kódový název nové verze je Mutara. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.

Ladislav Hagara | Komentářů: 0
včera 00:55 | Komunita

Vedení Nadace pro svobodný software (FSF) vydalo oficiální prohlášení k návratu Richarda Stallmana (RMS) do vedení FSF. Richard Stallman promluvil ke komunitě kolem svobodného softwaru.

Ladislav Hagara | Komentářů: 23
12.4. 20:33 | Pozvánky

Ve středu 14. dubna pořádá brněnský Red Hat tradiční akci Open House, letos opět ve virtuální podobě. Open House nabízí studentům, ale i zájemcům z široké veřejnosti příležitost poznat Red Hat, jeho kulturu a dozvědět se o stážích a pracovních příležitostech. Letošní program nabídne 3 souběžné streamy od více než 30 přednášejících. Jeden z nich bude věnován technickým přednáškám, kde se dozvíte o různých projektech a produktech, na kterých

… více »
Dorka | Komentářů: 0
12.4. 16:11 | IT novinky

Microsoft kupuje firmu Nuance Communications za 19,7 miliardy dolarů. Nuance Communications se věnuje rozpoznávání řeči pomocí umělé inteligence především ve zdravotnictví. Technologie od Nuance Communications je použita také ve virtuálním asistentovi Siri.

Ladislav Hagara | Komentářů: 12
12.4. 14:44 | Nová verze

Český překladatelský tým LibreOffice vydává příručku LibreOffice Writer verze 6.4. Kniha představuje některé hlavní funkce aplikace LibreOffice Writer:… více »

Zdeněk Crhonek | Komentářů: 0
12.4. 13:33 | Nová verze

Příspěvek na blogu webové aplikace pro spolupráci na zdrojových kódech pomocí gitu Gitea (Wikipedie) představuje novinky nové verze 1.14.0 této v programovacím jazyce Go naprogramované aplikace.

Ladislav Hagara | Komentářů: 0
12.4. 09:00 | Nová verze

V březnu 2016 byl 2D animační software Toonz uvolněn jako open source pod názvem OpenToonz. O víkendu byl OpenToonz vydán ve verzi 1.5.0. Přehled novinek v poznámkách k vydání na GitHubu. Novou verzi bude možné nainstalovat také z Flathubu a Snapcraftu.

Ladislav Hagara | Komentářů: 0
12.4. 08:00 | IT novinky

Společnost Espressif Systems oznámila, že rodinu SoC ESP32 brzy rozšíří o ESP32-C6 s 32bitovým RISC-V jádrem a podporou Wi-Fi 6 a Bluetooth 5 (LE).

Ladislav Hagara | Komentářů: 0
Kolik času v průměru denně trávíte videohovory/-konferencemi? (ať už v práci, škole nebo soukromě)
 (52%)
 (13%)
 (15%)
 (10%)
 (7%)
 (1%)
 (1%)
Celkem 293 hlasů
 Komentářů: 7, poslední 8.4. 12:14
Rozcestník
Štítky: není přiřazen žádný štítek

Jak si napsat vlastní bootloader

iRed.team zveřejnil článek, jak si napsat vlastní bootloader. Autor k tomu používá NASM (Netwide Assembler).

2.3. 10:52 | Max | Zajímavý článek


Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

2.3. 11:09 Petr
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
V dnešní době by spíše měli ukázat, jak si napsat EFI bootloader a né tento zastaralý způsob, který bude fungovat jen se zapnutou emulací BIOSu.
Max avatar 2.3. 11:20 Max | skóre: 69 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Jop, jop, je to samozřejmě tak, nicméně i tak mi to přišlo celkem zajímavý :).
Zdar Max
Měl jsem sen ... :(
AraxoN avatar 2.3. 11:30 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Možno pre niekoho EFI má nejakú výhodu, ale ja mám skoro všade Legacy BIOS. Práve preto, že je jednoduchší.
Jendа avatar 2.3. 12:58 Jendа | skóre: 76 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Mně jednodušší nepřijde - EFI znamená „hodit soubor na FAT32 oddíl“, zatímco u „klasického“ zavlékání je tu celý ten cirkus s instalací do bootsektoru a na začátek disku před první partition.
Josef Kufner avatar 2.3. 14:22 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Složitosti se nejde zbavit. Buď bude složitější bootloader (+firmware), nebo jeho používání.

MBR je neskutečně triviální způsob bootování. V prvním bloku (512B) je kód, který se načte do paměti a spustí. To je celé. Nic víc tam není.

EFI je v podstatě MS-DOS dodaný jako firmware, který má k dispozici key-value úložiště, kam se zapíše seznam bootovacích souborů a pár dalších věcí. V podstatě to je také docela jednoduché, ale obnáší to nějakou tu infrastrukturu navíc. Na oplátku to umožňuje firmwaru poskytovat služby dostupné z operačního systému. Takže ve výsledku se to celkem dobře používá a umí to spoustu věcí, i když je to složitější, tedy spíš právě díky tomu.
Hello world ! Segmentation fault (core dumped)
Jendа avatar 2.3. 14:29 Jendа | skóre: 76 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
V prvním bloku (512B) je kód, který se načte do paměti a spustí. To je celé.
Nj, ale protože se do 512B (ve skutečnosti 446) nic rozumného nevejde, tak se to hackuje tak, že se buď něco zapisuje náhodně před první partition, nebo se hardcodují pozice bloků na disku (což se rozbije když nespustíte po změně lilo).
EFI je v podstatě MS-DOS dodaný jako firmware, který má k dispozici key-value úložiště, kam se zapíše seznam bootovacích souborů a pár dalších věcí.
Já doufám, že když se napíše grub-install --removable, tak to bude fungovat i bez toho zápisu do firmware, ale zatím jsem to dělal jednou.
Josef Kufner avatar 2.3. 14:35 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
MBR pochází z dob MS-DOSu. Tehdá 512B stačilo.

Ad Grub: Já bych radši měl Live-EFI (jako Live-CD) s recovery systémem přidané rovnou v EFI boot nabídce.
Hello world ! Segmentation fault (core dumped)
AsciiWolf avatar 2.3. 15:38 AsciiWolf | skóre: 40 | blog: Blog
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Až tak jednoduchý to v praxi bohužel není, minimálně v případě UEFI. Viz například bootovací záznamy v efivars.
Conscript89 avatar 2.3. 18:08 Conscript89 | Brno
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
No, celkem je, staci ho dat na fat partition do cesty "\EFI\BOOT\BOOTX64.EFI" v pripade x86_64. Pro jine architektury se bootloader soubor potom jmenuje jinak, napr. BOOTAA64.EFI v pripade aarch64 a BOOTIA32.EFI v pripade i686.
I can only show you the door. You're the one that has to walk through it.
AraxoN avatar 2.3. 16:00 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
dd bs=440 conv=notrunc count=1 if=/usr/share/syslinux/gptmbr.bin of=/dev/sda
Hotovo! Ťažká práca, naozaj... a oddiely si na disku spravím ako chcem, nemusím tam mať žiaden patentovaný MS-DOS oddiel a do neho nič nahrávať. Taktiež sa nemusím báť, že som nejak zmrvil podpis jadra, alebo niekam zabudol zaviesť vlastné kľúče a EFI mi preto odmietne nabootovať server tisíc kilometrov ďaleko.
Jendа avatar 2.3. 16:25 Jendа | skóre: 76 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
A v těch 440B je co přesně? Jak to zjistí odkud to má brát třeba jádro?
Taktiež sa nemusím báť, že som nejak zmrvil podpis jadra, alebo niekam zabudol zaviesť vlastné kľúče
Nepleteš si EFI a SecureBoot?
Josef Kufner avatar 2.3. 18:36 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
A v těch 440B je co přesně? Jak to zjistí odkud to má brát třeba jádro?
Je tam právě napsáno, kde (a jak) to má brát jádro (a případně zbytek bootloaderu).
Hello world ! Segmentation fault (core dumped)
Jendа avatar 2.3. 19:40 Jendа | skóre: 76 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
To je tohle?
The task of the MBR (Master Boot Record) is to load boot code from an active partition of a drive.
Tím jsme problém jenom odsunuli o jeden bootsektor dál…
Josef Kufner avatar 3.3. 12:25 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Ano. Ten první bootsektor je totiž prťavý a moc se tam toho nevejde. Řeší se to různými způsoby. Jeden z nich je, že MBR najde bootovací partition a předá řízení bootovacímu sektoru tam. Další způsob je, že kód v MBR sáhne na sousední volné bloky, ještě před první partition. Ale nemá to smysl už moc řešit (mimo učebnic dějepisu).
Hello world ! Segmentation fault (core dumped)
k3dAR avatar 3.3. 02:12 k3dAR | skóre: 60
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
UEFI a SecureBoot jsou 2 ruzne veci, s vypnutym SecureBoot (coz sice nepovazuju za rozumne, ale dostanes se na (podobnou) uroven jako s Legacy) UEFI samozrejme zadne podpisy ci klice neresi... jinak pokud nechces vlastni klice (coz (to nechces) povazuju opet za nerozumne) tak podepsane jadro se dodava primo v distribucnim balicku(respektive pokud nepouzivas DIY distro), tedy ty (ani tvuj system) jiz nic sam nepodepisuje ;-)
porad nemam telo, ale uz mam hlavu... nobody
AraxoN avatar 3.3. 09:09 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Používam prevažne vlastné DIY jadro, ale to nie je pointa. Ešte stále som sa nedozvedel, akú výhodu mi EFI má poskytovať. Čo získam tým, že si vlastné jadro podpíšem a nechám si pri štarte potvrdiť, že som ho naozaj podpísal? Čo získam tým, že sa nechám obmedzovať pri delení disku? Čo získam tým, že si pridám ďalšiu vrstvu zložitosti do deploymentu a bootovania?

Áno, rozumiem, že pre ľudí, čo používajú inštalátor a vanilla jadrá, to nepredstavuje žiadnu námahu navyše. Ale ani oni tým nič nezískali. Je to zmena len preto, aby bola nejaká zmena.
Josef Kufner avatar 3.3. 12:45 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
EFI Services. Ovladače tím získávají informace a lepší přístup k hardwaru, resp. jeho konfiguraci. Mám zkušenost, že při zapnutém EFI mi mnohem lépe funguje KMS a grafické ovladače k Intel kartě.

Tato přidaná vrstva naopak deployment i bootování zjednodušuje. Problematický kód, který byl v MBR a všude kolem, se přesunul do firmwaru a poskytuje celkem hezké API pro zavedení operačního systému. Reálně to vypadá tak, že instalátor operačního systému nahraje jádro na EFI oddíl jako běžný soubor a do EFI proměnných nastaví, ze ten soubor je bootovací a má takový popisek a pořadí. Když přijde druhý operační systém, tak si tam přidá svůj záznam a nerozbije ten první. Různé recovery nástroje se tam také mohou přidat (notebooky s Windows tam mají např. schovanou instalačku).

Z pohledu hardwaru je situace jen minimálně složitější. Hlavně jde o to, že firmware musí implementovat netriviální standardizované API. Fyzicky to však znamená jen trochu větší ROM pro "BIOS" a trochu větší NVRAM (v dobách BIOSu zvaná CMOS) pro EFI proměnné.

Když si ale uvědomíš, že uvnitř Intel CPU ti běží Minix, na desce je firmware s EFI a teprve někde daleko nad tím běží Linux, …
Hello world ! Segmentation fault (core dumped)
Jendа avatar 3.3. 13:11 Jendа | skóre: 76 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Čo získam tým, že sa nechám obmedzovať pri delení disku?
Fun fact: BIOSy jsou tak zabugované, že bez partition table s označenou jednou partition jako bootovací taky nenajedou. Takže ani v případě „ancient“ booting si nemůžeš disk rozdělit libovolně.
Čo získam tým, že si pridám ďalšiu vrstvu zložitosti do deploymentu a bootovania?
Jak jsem psal výše, mně to naopak přijde jednodušší.
Logout avatar 2.3. 11:44 Logout | Praha
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Je až kupodivu, že o tom ještě píše někdo dneska. Tyhle věci byly popsány už v minulém století, kdy se tím assembleristi bavili. Ale chápu, že každá generace si musí své poznání vybojovat a sama objevit - věřit nějakým dědkům, pche! :-)

http://mircosoft.mzf.cz/int21h/044-programovani-os.htm
"Zmáčkni Alt-F4 a pak Viva powerpc!" říká Technomorous.
2.3. 15:55 USC
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Stačilo by tam hodit zmínku o Windows 10 a odstranit rok 2006 na konci a mohou to vydávat každý rok jako novinku :-D
2.3. 12:12 Meh
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Pekne svinstvo. Pokud ten web nema pristup ke canvasu, nacte se cela stranka a pak vse zmizne a zustane jen "something went wrong".
Takze otazka neni, jak si napsat vlastni bootloader, ale zda jeste nekdo umi udelat web bez fingerprintingu.
Jendа avatar 2.3. 13:00 Jendа | skóre: 76 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jak si napsat vlastní bootloader
Já mám NoScript, nemám v něm nic povoleného, a stránka vypadá normálně načtená (včetně animovaného gifu).

Založit nové vláknoNahoru


ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.