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 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 0
    dnes 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 5
    dnes 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 32
    včera 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 13
    včera 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 2
    včera 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    včera 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (74%)
     (9%)
     (2%)
     (16%)
    Celkem 805 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    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.