abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:44 | IT novinky

    V San José probíhá vývojářská konference NVIDIA GTC 2024. CEO společnosti NVIDIA Jensen Huang měl dvouhodinovou keynote, ve které představil celou řadu novinek: NVIDIA Blackwell platform, NVIDIA NIM microservices, NVIDIA Omniverse Cloud APIs, Project GR00T, …

    Ladislav Hagara | Komentářů: 0
    včera 14:33 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy jednotlivých přednášek z letošního Installfestu.

    Ladislav Hagara | Komentářů: 7
    včera 13:33 | Pozvánky

    Od 21. do 23. března proběhnou Arduino Days 2024. Sledovat bude možné oficiální streamy. Zúčastnit se lze i lokálních akcí. V Česku jsou aktuálně registrovány dvě: v Praze na Matfyzu a v Poličce v městské knihovně.

    Ladislav Hagara | Komentářů: 0
    včera 12:11 | Pozvánky

    Letošní ročník konference LinuxDays se uskuteční o víkendu 12. a 13. října, opět se potkáme v pražských Dejvicích na FIT ČVUT. Také během letošního ročníku nás budou čekat desítky přednášek, workshopy, stánky a spousta doprovodného programu. Aktuální dění můžete sledovat na Twitteru, Facebooku nebo na Mastodonu, přidat se můžete také do telegramové diskusní skupiny.

    Petr Krčmář | Komentářů: 3
    včera 09:00 | Nová verze

    Byla vydána nová major verze 2.0.0 a krátce na to opravné verze 2.0.1 open source online editoru Etherpad (Wikipedie) umožňujícího společné úpravy v reálném čase.

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

    Elonem Muskem založena společnost xAI otevřela pod licencí Apache 2.0 svůj AI LLM model Grok-1.

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

    Matematický software GNU Octave byl vydán ve verzi 9.1.0. Podrobnosti v poznámkách k vydání. Nově je preferovaný grafický backend Qt a preferovaná verze Qt 6. V tomto vydání byly přepracovány funkce pro převod čísel z desítkové soustavy. Jako obvykle jsou zahrnuta také výkonnostní vylepšení a zlepšení kompatibility s Matlabem.

    Fluttershy, yay! | Komentářů: 0
    17.3. 22:33 | Zajímavý článek

    Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu březnový souhrn novinek. Vypíchnout lze, že pracují na virtuálním asistentu PineVox a zatím bezejmenných sluchátkách na lícní kosti (bone conduction).

    Ladislav Hagara | Komentářů: 0
    17.3. 18:33 | Nová verze

    Hyprland, kompozitor pro Wayland zaměřený na dláždění okny a zároveň grafické efekty, je již dva roky starý. Při té příležitosti byla vydána verze 0.37.0 (a záhy opravná 0.37.1 řešící chybu ve vykreslování oken). Nově závisí na knihovně hyprcursor, která poskytuje škálovatelné kurzory myši.

    Fluttershy, yay! | Komentářů: 3
    17.3. 16:11 | Komunita

    Geolokační služba Mozilla Location Service, kterou používá množství svobodného softwaru (často přes Geoclue), letos skončí. Data budou dostupná pouze do 10. dubna 2024, API klíče třetích stran budou odstraněny 12. června. Příčinou je údajné porušení patentů firmy Skyhook v roce 2019, následná dohoda omezila rozvoj MLS.

    Fluttershy, yay! | Komentářů: 0
    Steam
     (25%)
     (28%)
     (13%)
     (10%)
     (24%)
    Celkem 305 hlasů
     Komentářů: 4, poslední 11.3. 21:45
    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.2021 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.2021 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.2021 11:20 Max | skóre: 72 | 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.2021 11:30 AraxoN | skóre: 47 | 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.2021 12:58 Jendа | skóre: 78 | 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.2021 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.2021 14:29 Jendа | skóre: 78 | 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.2021 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.2021 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.2021 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.2021 16:00 AraxoN | skóre: 47 | 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.2021 16:25 Jendа | skóre: 78 | 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.2021 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.2021 19:40 Jendа | skóre: 78 | 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.2021 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.2021 02:12 k3dAR | skóre: 62
    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.2021 09:09 AraxoN | skóre: 47 | 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.2021 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.2021 13:11 Jendа | skóre: 78 | 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.2021 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.2021 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.2021 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.2021 13:00 Jendа | skóre: 78 | 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.