Diit.cz - Novinky a informace o hardware, software a internetu

Diskuse k Mají desky Gigabyte EFI, nebo BIOS?

EFI není pro start systému potřeba. Stačí, když BIOS bude schopen dekódovat GPT a zavést správná data do paměti. Omezení 16bitového režimu obcházely již Windows2000, protože tam se jádro rozprostíralo na třech plných disketách (když se bootovalo z disket). Stejně tak již v 90. letech linuxové LILO (a později GRUB) byl schopen zavést jádro větší, než 1MiB. Také v 16bitovém DOSu zpřístupňuje paměť nad 1MiB ovladač HIMEM.SYS. Překročení omezení se totiž skrývá v režimu V86 (Virtual 8086 mode), kdy procesor běží v 32bitovém režimu a umí si namapovat jakoukoliv část 4GiB paměti do 1MiB, uvnitř kterého pak pracuje v 16bitovém režimu. Jakýkoliv současný BIOS musí V86 používat, protože jinak by nebyl schopen detekovat (a kontrolovat) RAM nad hranici 1MiB (resp. 1MiB+64KiB-8bajtů, IIRC, protože to je adresa 0xFFFF0 plus 0xFFFF, která se dá dát do segmentu a offsetu v 16bitovém režimu).

Prakticky to znamená, že si někdo konečně uvědomil, že BIOS má jen ta omezení, která jsou do něj zapracována. A ne tedy ta, o kterých se deklamuje (tj. že BIOS není schopen nabootovat z disku >2TiB). BIOS interně podporuje 48bitové LBA, takže není důvod, aby nad 2TiB neviděl. Pravda je tedy jen to, že tabulka v MBR nedokáže pojmout číslo nad hranici 2TiB.

Podle mne Gigabyte jednoduše obchází nutnost platit licenční poplatky za to, že operuje se označením EFI (UEFI), případně jiné poplatky (za konzultace, členství ve sdružení apod.).

Je potřeba si také uvědomit, že EFI je tady proto, aby byly podporovány binární ovladače. Dnes musí výrobce chipsetu, procesoru i GPU na grafické kartě zveřejnit detailní HW specifikace ovládání. EFI umožňuje distribuovat binární ovladače, takže tvůrce EFI (a výrobci základní desky) vůbec nemusí nic o nastavení, inicializaci a řízení HW komponent základní desky vědět. A to je dobré pro DRM (Digital Rights Managment), protože pak bude jednoduché zajistit, že si film s/bez DRM ve vysokém rozlišení prostě nepřehrajeme a muziku nepustíme (vůbec nikdo nebude tušit, jak se to dělá).

+1
-2
-1
Je komentář přínosný?

Pardon, ne Windows2000, ale WindowsNT obecně.

+1
+1
-1
Je komentář přínosný?

Jen pro pochopení: V86 znamená, že kód (BIOSu) běží v 32bitovém režimu. Jen pro spuštění kódu zavaděče z MBR (při startu z disku), případně boot sektoru (při startu z diskety) se rozběhne v 16bitovém režimu (uvnitř V86). Takže BIOS má v 16bitových instrukcích obsluhu klasických IBM PC kompatibilních přerušení (INT21). Kód BIOSu, který se účastní startu počítače, je nejspíš 32bitový, protože není důvod, aby nebyl.

+1
-2
-1
Je komentář přínosný?

Co ma BIOS s prerusenim INT21?

+1
-4
-1
Je komentář přínosný?

Nic. Int 21h je DOS. BIOS ma nejdulezitejsi Int 10h (video),Int 13h (disk), Int 15h (pamet) a Int 16h (klavesnice). Plus samozrejme IRQ, tedy predevsim Int 8 (casovac) a Int 9 (klavesnice). Kompletni seznam napr. http://en.wikipedia.org/wiki/BIOS_interrupt_call ...

+1
0
-1
Je komentář přínosný?

Jo aha. 21 = 15h ...

+1
-2
-1
Je komentář přínosný?
+1
-2
-1
Je komentář přínosný?

Hezká teorie, ale zbytečně komplikovaná. Je pravda, že BIOS se hned po startu přepne do chráněného režimu (32-bit, u x64 do 64-bitového) a provede v klidu všechno, co potřebuje: inicializaci systému (myslím tím HW, ne OS), parsovaní GPT, ...
Ale je zbytečné tam pouštět V86, mnohem triviálnější je prostě se jen ve správný okamžik přepnout zpět do reálného módu. Mezi správné okamžiky patří např. spuštění bootloaderu. Kdyby BIOS byl ve V86, bude mít problém zavaděč OS s přepnutím do chráněného režimu, kam OS směřuje, protože CPU už v tom chráněném režimu spravovaném BIOSem je. Muselo by se to speciálně ošetřovat buď jen na straně BIOSu v monitoru V86 nebo domluvou BIOS-OS. O ničem takovém nevím.

+1
-3
-1
Je komentář přínosný?

Predstava, ze nekdo do V86 monitoru narve takovou hromadu vyjimek jaka by byla zapotrebi aby dokazal predat rizeni jinemu programu v chranenem modu je naivni. BIOS je jednoduse napsany tak ze skace mezi realnym a chranenym modem. Ono je to jednodussi nez i zakladni V86 monitor.

+1
0
-1
Je komentář přínosný?

Neco na tema "proc neni start OS ve V86 sranda" zde: http://en.wikipedia.org/wiki/OS/2#Virtualization ... zkracene, VMWare dloouuuho nebylo schopne pustit OS/2 protoze nektere feature ktere OS/2 pouzivalo neumelo.

+1
-2
-1
Je komentář přínosný?

Taktiez sa priklanam k nazoru ze V86 v BIOS je proste nezmysel. A nikdy som take nic v BIOS nevidel, ani nevidim dovod naco by BIOS do tohto archaickeho rezimu prepinal. V86 je skor urceny pre emulaciu 16-bit apps v OS, ak sa nemylim tak to pouzival aj EMM386. Navyse ak by BIOS vo V86 predaval kontrolu OS, tak by OS nedokazal nastavit svoje vlastne Ring0 tabulky a prevziat kontrolu. To by akoze mal OS bezat pod BIOS ako emulacia? :)
Aj Legacy BIOS sa uz dost davno prepina do 32-bit rezimu uplne bezne a pomerne skoro - bezia tam prvotne jednoduche testy pamate, kompletny MRC (Memory Reference Code) a dalsie veci.. Navyse existuje este tzv Flat Real Mode, ktorym sa da oklamat adresovanie v real mode (prepne sa na chvilu do Protected, nastavia deskriptory na limit 4G a vrati sa s5.. potom sa daju pouzivat 32-bit offsets).
Kontrola OS sa predava v real mode, pokial sa dobre pamatam tak cez INT 19h

+1
-3
-1
Je komentář přínosný?

Ano, EMM386 ho pouzival stejne jako alternativy (QEMM, 386MAX, ...). Fungoval totiz tak, ze jsi ho pod DOSem v realnem modu pustil a on prepnul procesor do V86 modu a pak predstiral ze se vratil do DOSu prestoze v jistem smyslu byl potom OS on.

Teoreticky by slo, ze start operacniho systemu pobezi ve V86 do bodu prepnuti do chraneneho modu, potom BIOS nahradi svoje tabulky temi z OS a preda mu kontrolu. V praxi by to ovsem znamenalo odemulovat vsechny instrukce mezi vlastnim prepnutim a nastavenim posledni tabulky (protoze se ty tabulky musi prepnout vsechny najednou). Podotykam, ze se jedna o ty na emulaci nejobtiznejsi instrukce vubec a ze ten operacni system vubec nemusi spolupracovat ... a ze se dokonce muze prepnout zpatky do realneho modu (a ty ho uz nemuzes zastavit) protoze tohle jeste nebyl TEN prechod ale jenom cast nahravani kodu kernelu do pameti.

Kontrola OS se predava pres far call na 0:7C00 (nebo to byl 7C0:0?). Na int 19h by mela byt funkce BIOSu ktera postupne zkusi nacist boot sektor disku a kdyz se ji nejaky povede tak na nej skoci.

+1
-2
-1
Je komentář přínosný?

Grafický setup BIOSu pamatuji u počítačů Compaq 386 lpv - a určitě byl i u starších - samotné grafické prostředí se při přechodu do setupu startovalo ze zvláštního oddílu disku (paměti byly tenkrát ještě hodně drahé).

+1
+1
-1
Je komentář přínosný?

No... to ja mel Pacard Bell 486DX2/66 a taky to melo graficky BIOS (koupil jsem to tehdy kdesi v bazaru)... divil jsem se

+1
-1
-1
Je komentář přínosný?

já to taky měl na 486

+1
-4
-1
Je komentář přínosný?

Jo já měl na Compaq 486 grafický BIOS načítaný z disket, vypadal jako Windows 3.11

+1
-1
-1
Je komentář přínosný?

U starších Compaqů byly tyhle Setupy velmi často na pevném disku a ne přímo součást BIOSu. Do samotného BIOSu se vlastně nechodilo, to byl prostě ROM BIOS bez uživatelského přístupu a všechny parametry se nastavovaly těmi programy, co byly na speciálním diskovém oddílu. Jak se vyndal disk, Setup byl pryč :).

Taky jsem se s něčím podobným setkal na jedněch starších počítačích Olivetti (vzpomínám si, že měly procesor 486SX/25). Tam taky byl veškerý Setup na disku a bylo to docela "tricky" se do něj dostat ;-) (standardní klávesy jako Del to nebralo, byla to nějaká šílená nezapamatovatelná kombinace, nejjednodušší bylo vygenerovat Keyboard error a počítač pak sám nabídl Setup).

Jinak co se vyloženě grafických Setupů týče, mám doma jeden prastarý notebook IBM Thinkpad s Pentiem MMX asi na 200 MHz a ten má taky grafický BIOS. Protože je to ale notebook, tak jde o naprosto atypickou záležitost bez možnosti nastavení něčeho rozumného. I zde byla lepší volnou instalace přímo Windowsové utility a nastavování parametrů BIOSu přímo z Windows (tak mě napadá, že Gigabyte TouchBIOS se k tomu vlastně vrací ;).

+1
0
-1
Je komentář přínosný?

K Compaqům byly diskety pro vytvoření oddílu se setupem. Takže po výměně disku člověk založil disketu a bootnul. Ještě předloni byly ke stažení u HP (HP koupil Digital a ten předtím koupil Compaq).

+1
-3
-1
Je komentář přínosný?

Taky si na ně vzpomínám :). Každopádně jsem kvůli této atypičnosti neměl svého času Compaqy rád. Až později, když se v Compaqu umoudřili a začali dělat zase "BIOS včetně Setup Utility" v jednom, tak jsem proti nim nic neměl :).

+1
-2
-1
Je komentář přínosný?

Dobrý den,

mám hloupou otázku.
Co musím udělat pro to, abych nastavil EFI bootvání svých Win7?
Mám desku ASUS Sabertooth P67, která má EFI, ale nemohu se stále dobrat výsledku.
AuŠUS stránky mlčí jak jehňátko, na dotazy AuŠUS neodpovídá...

Děkuji za jakékoliv vodítko, které zelenáčovi pomůže :)

+1
+1
-1
Je komentář přínosný?

Mrkni na menu Exit úplně dolů.

+1
-3
-1
Je komentář přínosný?

Mrknu, díky...

+1
+2
-1
Je komentář přínosný?

Díky za mínus. To bude asi proto, že se ptám, že? :)

+1
-1
-1
Je komentář přínosný?

Ne, predpokladam, ze za to, ze si koupis desku od vyrobce, kteryho ocividne nemas rad ;)

+1
-1
-1
Je komentář přínosný?

Hmm, tak to mi může dát palec dolů jen ten, kdo nečetl, co jsem tam napsal :)
Dělám v IT a ještě jsem se nesetkal s tím, že by tak velký výrobce vůbec nereagoval. Třeba alespoň stylem "jste mimo, podívejte se na to a nato....".
A na stránkách ani v manuálu nic není. Proto ten AuŠUS :)
Nicméně názor může vyjádřit každý. Tudíž pokud si někdo myslí, že je v pořádku, že se nedobere informací přes oficiální support kanály, tak ty palce chápu...
Sem s nima, evidentně si je zasloužím, že jsem se dotkl Vaší oblíbené firmy, citlivky :)

+1
-2
-1
Je komentář přínosný?

K EFI Bootování potřebuješ (budeme se bavit jen o Windows 7):

1 - Instalačku Windows 7 x64 (ideálně originální, protože na upravovaných není záruka, že tam bude i EFI zavaděč)

2 - EFI v desce s povoleným EFI bootováním

3 - prázdný disk, na který bude systém instalován.

Třetí požadavek je proto, že Windows se v režimu EFI instalují na disk s rozdělením GPT a MBR v této situaci vyloženě nepodporují, přičemž bych ale předpokládal, že pokud na disku něco bude, pak bude mít takový disk právě tabulku rozdělení typu MBR. Instalátor systému bootnutého přes EFI si to samozřejmě dovede na vyžádání smazat, ale ne předělat.

No, a pak už stačí jen bootnout instalačku a nainstalovat systém. Ve fázi výběru disku dopročuji udělat to ručně a zkusit nejprve na disku vytvořit vlastní oddíl pro instalaci. Zde se nejspolehlivěji pozná, zda je nabootováno v režimu BIOS, nebo EFI. V režimu BIOS udělá instalátor požadovaný oddíl a k němu jeden 100MB oddíl, kam si uloží boot soubory a další drobnosti. Naproti tomu v EFI režimu se vytvoří oddíly dva a jeden z nich bude právě EFI System Partition - neklamná známka toho, že se nabootovalo v režimu EFI.

+1
-2
-1
Je komentář přínosný?

No konečně někdo, kdo pochopil mou otázku a došlo mu, že je na mě potřeba pomalu :) Krásně a jednoduše napsáno. Opravdu díky!

+1
0
-1
Je komentář přínosný?

Ahoj,
ještě jednou díky, už vím jak a mám v praxi ověřeno.
Bohužel, po instalaci v EFi režimu mi nejde připojit 1TB WD Caviar Black. Tedy on připojit jde, ale pokud je připojen ve chvíli bootování, pak nenaběhne systém.
Zkoušel jsem jej připojovat na různe porty a různé řadiče, ale prostě jakmile je přítomen, systém se brání.
Navíc jsem nezměřil rozdíly v rychlosti bootování, tudíž se vracím k ověřené instalaci s MBR :)

+1
-2
-1
Je komentář přínosný?

Zajimave... to znamena ze i moje stara deska MSI P45 Neo-F ma "neco jako EFI", protoze presne tak se mi instalator choval. A nemohl jsem pochopit naco to tam je (ze to bude EFI mi vazne nedoslo (!), i kdyz mi to instalator napsal)... :) :) :)

+1
0
-1
Je komentář přínosný?

Pokud by to nemela tak by se ani nespustil instalator z DVD

+1
-1
-1
Je komentář přínosný?

Jak tak vidím tu obrovskou diskuzi, tak se spíš k EFI stavím zády. Ať to nejprve vyladí a pak nasadí...
- V sočasné době nasazovaní nových věcí ale vypadá takovým způsobem... "Dáme to na trh a zákazník se ozve".
- Zabugované nejsou už jen počítače, ale i telefony, auta, fény, osobní váhy, mikrovlnky, ledničky...

Všechny tyto BIOS-EFI "hacky" mě ujišťují o tom, že EFI ještě neni připraveno. (Kdyby bylo, proč už ho nemáme?) A když už se takovému hráči jako je Gigabyte do EFI nechce, tak tam bude něco hodně špatně.
- EFI nebo BIOS je něco co musí fungovat. Běžný uživatel o BIOSu(EFI) nemá ani vědět.
- Současná situace je ale taková, že chyby BIOSu postihují i běžné uživatele. Ti jsou pak nuceni aktualizovat BIOS.
- S EFI to bude mnohem horší...

+1
0
-1
Je komentář přínosný?

- Cim slozitejsi program, tim vetsi riziko chyby. Kdyz chceme aby telefony, auta, feny, vahy, mikrovlnky a lednicky umeli takove ty cool vecicky co se tak dobre prodavaji musi v nich byt pomerne slozity program ...
- Bezny uzivatel nema vedet ani o OS.
- Pokud ovsem ma EFI BIOS delat to co ma (tj. obsahovat ovladace na grafiku etc) tak jeho pravidelny update bude nutnosti.

+1
-1
-1
Je komentář přínosný?

EFI bylo v AwardBIOSu k dispozici pomerne dlouho, ale maloktery zakaznik ho skutecne pouzil, protoze v te dobe nebylo zapotrebi - nebyl zadny rozsireny OS, ktery by umel EFI.
EFI je v AwardBIOSu reseny jako pridavnej modul, kterej proste poskytuje RT sluzby, a obsahuje i boot manager. EFI shell byste si meli bejt schopny spustit, pokud ho date treba na USB stick do patricnyho adresare.
Detaily nevim, musel bych to nekde vyhrabat.

Ostatne, pokud nevite, jestli je ten kterej BIOS EFI nebo ne, proc se proste nemrknete na binarku? Rekl bych, ze to bude bit do oci :)

+1
-2
-1
Je komentář přínosný?

Když nám přesně řekneš, jak se na tu binárku podívat a jak přesně by nás to mělo udeřit do očí, budeme ti vděční :).

+1
-1
-1
Je komentář přínosný?

No, staci vzit jakejkoliv binarni editor, treba F3 v TotalCommanderu, a mrknout na konec. Zkousel jsem Z68XUD7.F6 a je to ocividne AwardBIOS s kodovym oznacenim 7A89VG0N. Dal, na adrese 3FE000 je "Award BootBlock...", a EFI bootblock nema. Krome toho na tuhle binarku funguje CBROM, coz je celkem slusnej dukaz, ze je to AwardBIOS jako kdyz vysije :)

+1
+2
-1
Je komentář přínosný?

Tipuju, ze pokud je to EFI, tak v nakym rozbalenym binarnim modulu pujde najit retezec "EFI". Si myslim, ze to co ma GB je normalni Award s nejakym modulem pro porporu EFI bootu. BIOS je modularni, ma treba extra modul na inicializaci radice pameti, tak proc by nemel EFI modul na parsovani GPT a zavadeni systemu z ni. A BIOS nebezi ve v86 ale v unrealmode, takze na vyssi adresy v pripade potreby dosahne ale jinak se chova jako normalni realmode program. Kazdopadne kdyz predava rizeni OS tak je v realmode a v86 si zapina az OS nebo spravci pameti (jako drive (Q)EMM386, 386MAX, ci dnes Jemm386).
A jinak s grafickym setupem sem se setkal poprve na sve prvni 486 - AMI WinBIOS. Ostatni spoluzaci na to koukali jak na zjeveni :)

+1
-1
-1
Je komentář přínosný?

Pro psaní komentářů se, prosím, přihlaste nebo registrujte.