Wszystko o BIOS-ie - Wojciech Sulik
Elementem łączącym wszystkie komponenty obecnych komputerów jest płyta główna, na której oprócz różnego rodzaju portów komunikacyjnych i głównego chipsetu znajduje się układ scalony, często nazywany BIOS-em komputera. W tym artykule postaramy się przybliżyć Państwu pojęcie BIOS-u komputera i jego funkcji.
Słowo BIOS jest skrótem od angielskiej nazwy Basic Input/Output System - Podstawowy System Wejścia/Wyjścia - która określa program zapisany w pamięci stałej ROM (Read Only Memory) lub obecnie częściej w tzw. pamięci Flash komputera. Program ten czuwa nad prawidłową wzajemną komunikacją systemu operacyjnego, poszczególnych komponentów komputera oraz jego urządzeń zewnętrznych (peryferyjnych). BIOS uaktywnia się w momencie włączenia komputera i przejmuje „władzę” nad nim do momentu załadowania właściwego systemu operacyjnego z dysku twardego, dyskietki lub innego nośnika pamięci masowej. Po włączeniu zasilania najpierw testowany jest procesor, potem pamięć ROM i RAM, następnie sterowniki przerwań i inne układy specjalizowane na płycie głównej, a w końcu urządzenia peryferyjne, takie jak klawiatura, dyski itd. W ostatniej fazie testu wykrywane są rozszerzenia BIOS-u zlokalizowane na kartach sterowników; następuje ich inicjalizacja i uruchomienie niezbędnych podprogramów.
W razie wykrycia jakichkolwiek błędów wyświetlany jest odpowiedni komunikat bądź z głośniczka komputera wydobywa się sygnał. W dalszej części procedury inicjalizacji BIOS-u komputer zaczyna dopominać się o system operacyjny. Przeszukuje on po kolei, w zależności od ustawienia, nośniki pamięci masowej, np. najpierw poszukuje go w pierwszej stacji dysków, a potem - gdy nie znajdzie - na pierwszym dysku twardym. Kolejność poszukiwania systemu można zmienić przestawiając odpowiednią opcję w programie konfiguracyjnym BIOS-u. Przyspiesza to start komputera (po co przeszukiwać zbędne miejsca). Nieważne, jaki system operacyjny (Linux, Windows czy MS DOS) jest zainstalowany na komputerze, zawsze może on korzystać z zasobów maszyny dzięki temu, że komputer ma BIOS, który udostępnia szereg funkcji obsługi poszczególnych urządzeń.
Główny program BIOS-u jest zapisany w pamięci ROM (obecnie: FlashROM), lecz ponieważ korzysta on również ze zmiennych, to konieczne było umieszczenie wartości tych zmiennych w pamięci RAM. Część z tych zmiennych (np. aktualna data wraz z godziną, hasło zabezpieczające BIOS, ustawienia dysków twardych) musi być przechowywana w pamięci przez cały czas, niezależnie od tego, czy komputer pracuje czy nie. Informacje te są przechowywane w podtrzymywanej bateryjnie pamięci CMOS, a zmiany poszczególnych wartości dokonywane są za pośrednictwem specjalnego programu (SETUP) umieszczonego wraz z BIOS-em w kostce ROM.
Setup - konfiguracja
Program Setup umożliwiający zmianę parametrów BIOS-u, w zależności od producenta może mieć różny wygląd, a nawet różnić się interfejsem (zwykle Setup obsługiwany jest klawiaturą, jednak BIOS-y niektórych producentów, np. American Megatrends, dysponują interfejsem okienkowym obsługiwanym myszką). Odpowiednie skonfigurowanie Setupu może znacznie zwiększyć wydajność komputera, jednak jeżeli z czymś przesadzimy albo włączymy niepotrzebnie jakieś opcje, nasz komputer może w ogóle nie wystartować lub odmawiać nam posłuszeństwa co chwilę. Proponuję więc rozpoczynanie „zabawy” z BIOS-em z dużą ostrożnością - przy jakichkolwiek modyfikacjach ustawień należy spisać na kartce dotychczasową konfigurację i w razie niepowodzenia, po ponownym włączeniu komputera, powrócić do poprzednich ustawień.
Zanim zapoznamy się z funkcjami BIOS-u przedstawionymi w ramkach, warto poznać pokrótce zasadę działania komputera opisaną w ramce „Komputer - jak to działa”. Po zapoznaniu się z nią możemy przejść do modyfikacji ustawień BIOS-u. Należy w tym celu otworzyć Setup - podczas uruchamiania wcisnąć klawisz „Delete” (w większości komputerów). Jeżeli komputer pozwoli nam „wejść” do BIOS-u, powinniśmy zobaczyć szereg opcji do wyboru (rys. 1), podzielonych na kilka kategorii opisanych w ramkach. Należy tylko wspomnieć, że wymienione przez nas opcje nie muszą być dostępne w każdej wersji BIOS-u, może też tak się zdarzyć, że pewne BIOS-y mają tych funkcji znacznie więcej lub też występują one pod innymi nazwami albo w innych kategoriach. Dzieje się tak dlatego, że Setupy BIOS-ów z reguły nie udostępniają wszystkich funkcji konfiguracyjnych BIOS-u i tu z pomocą mogą przyjść odpowiednie programy pozwalające dokonywać zmiany niektórych ustawień BIOS-u z poziomu systemu operacyjnego. Możemy ich używać
zamiast Setupu.
Jednym z nich jest np. TweakBIOS. Program ten po uruchomieniu pokazuje, jakie urządzenia znalazł (rys. 2), których ustawienia BIOS-owe można zmieniać. Po wybraniu jednego z urządzeń otwiera się okienko przypominające Setup BIOS-u firmy Award, gdzie możemy dokonywać zmian.
Bardzo ciekawą cechą tego programu jest ramka w prawym dolnym rogu, w której program wyświetla podpowiedzi pomagające ustawić BIOS tak, aby z komputera dało się wycisnąć tyle, ile tylko się da (rys. 3). Proponujemy „pobawić się” tym programem i sprawdzić, jak ustawienia BIOS-u mogą wpływać na wydajność komputera. Nie ma powodu martwić się, że jeżeli dokonamy niewłaściwych zmian, komputer nam się zepsuje, gdyż program ten w wersji shareware nie pozwala nagrywać zmian na stałe i w przypadku jakiegoś błędu wystarczy uruchomić komputer ponownie, a BIOS „załaduje” stare ustawienia.
Kolejnym programem jest BIOSAccess, który znacznie różni się interfejsem od opisanego wyżej, gdyż jest programem przeznaczonym dla środowiska Windows (rys. 4). Pozwala on na zmianę wielu parametrów BIOS-u, wystarczy wybrać odpowiednią kategorię, np. „BIOS Setup”, i jednym kliknięciem myszki można zmienić np. sekwencję poszukiwania systemu operacyjnego (rys. 5).
Następnie należy potwierdzić wciskając klawisz „OK” i z górnego menu wybrać opcję „File (strzałka) Save & Reboot”. Komputer zapyta nas, czy zamknąć wszystkie aplikacje i ponownie uruchomić komputer. Jeżeli się na to zdecydujemy - komputer wystartuje ponownie ze zmienionymi przez nas ustawieniami w BIOS-ie. Wspomniane przez nas programy są jednymi z wielu, nie sposób jest bowiem wymienić wszystkich pozwalających ingerować użytkownikowi w ustawienia BIOS-u. Mamy jednak nadzieję, że wyżej opisane funkcje BIOS-u pozwolą Czytelnikom na pewne eksperymenty z ustawieniami BIOS-u, proponowanymi przez producentów.
CPU Soft Menu
Pozwala w prosty sposób na dokonywanie ustawień związanych bezpośrednio z procesorem, jednak nie wszystkie płyty główne mają to menu. W pierwszej linii pokazany jest typ procesora zainstalowanego w naszym systemie. Dalej mamy możliwość zadeklarowania, w jaki sposób mają być ustawiane parametry procesora (User Define - sami decydujemy o wszystkim lub Auto - program Setup ustawia wszystko za nas). W przypadku, gdy się zdecydujemy na konfigurację manualną, możemy ustawić: częstotliwość taktowania zewnętrznego zegara (External Clock), np. 100 MHz dla Pentium II; mnożnik (Multiplier Factor), np. 4,5 dla Pentium II 450 MHz; częstotliwość taktowania portu dla karty graficznej AGP (AGPCLK/CPUCLK), np. 2/3 prędkości zegara.
Następnie ustawiamy napięcie zasilające jądro procesora (Core Voltage). I tu znów możemy zdecydować się na ustawienie automatyczne (CPU Default) lub sami zdecydować, jakie ma być napięcie. Zmiana napięcia zasilającego ma sens jedynie w ograniczonych przypadkach, kiedy np. chcemy uruchomić procesor z szybkością większą od nominalnej (overclocking). Zawsze przy tym powinniśmy pamiętać, by zmiana napięcia nie była większa niż o 10% wartości nominalnej (w praktyce oznacza to maksymalną zmianę o ok. 0,2 V).
Standard CMOS Setup Menu
Zawiera proste parametry konfiguracyje BIOS-u:
• Date - ustawiamy datę (miesiąc, dzień, rok).
• Time - ustawiamy aktualny czas (godzina, minuta, sekunda).
Dalej mamy możliwość ręcznych ustawień parametrów dysków twardych podłączonych do komputera (nie polecamy zmieniać tych ustawień ręcznie, lepiej zdecydować się na parametr auto, który powoduje wykrycie wszystkich dysków przy każdym starcie komputera). Następnie określamy, w jakie stacje dyskietek wyposażony jest nasz komputer. W przypadku, gdy mamy tylko jedną stację dyskietek 3,5” ustawiamy: „Drive A: 3.5 in”, „Drive B: none”. Innych parametrów nie polecamy zmieniać.
BIOS BIOS-owi nierówny
Producenci płyt głównych instalują w swoich produktach BIOS-y różnych firm, np. Award czy też American Megatrends (AMI), niektórzy - Acer, Compaq, Dell - dysponują własnym BIOS-em, dzięki czemu mogą się one znacznie różnić od siebie interfejsem. Jednak wszystkie spełniają podobne, wręcz te same funkcje, przynajmniej w przypadku BIOS-ów pochodzących z tej samej generacji płyt głównych.
O tym, jakiego producenta oprogramowaniem BIOS-u dysponuje nasza płyta główna, możemy przekonać się na trzy sposoby. Pierwszy, najłatwiejszy, polega po prostu na włączeniu komputera - to, co ujrzymy na ekranie to wizytówka BIOS-u. Podczas jej wyświetlania mamy zazwyczaj możliwość włączenia odpowiedniego programu konfiguracyjnego za pomocą - najczęściej - przycisku Del. Drugi sposób nie wymaga w ogóle włączania komputera, jednak konieczne jest obejrzenie płyty głównej. Na samej płycie znajdują się różne układy, jeden z nich zawiera oprogramowanie BIOS-u i na nim zwykle znajduje się nalepka informująca, w której firmy BIOS dana płyta główna jest zaopatrzona. Ostatnią metodą jest użycie specjalnego programu, już z poziomu systemu operacyjnego, który wyświetli nam informację o producencie i wersji BIOS-u. Informacja ta jest istotna do prawidłowego funkcjonowania procesora, urządzeń peryferyjnych czy też niektórych programów.
Wersja jest związana z datą produkcji BIOS-u. Należy dbać - o ile jest to możliwe - aby mieć w miarę nowy BIOS w swoim komputerze. Obecnie produkowane BIOS-y (umieszczane w pamięci Flash) można uaktualniać za pomocą specjalnych programów dostarczanych przez producenta.
BIOS Features Setup Menu
Mamy tu możliwość zwiększenia wydajności komputera oraz dokonania zmian niektórych opcji według własnego upodobania (np. kolejności przeszukiwania napędów w poszukiwaniu systemu operacyjnego). Przedstawimy tylko standardowe funkcje występujące w większości BIOS-ów.
• IDE HDD Block Mode - włączenie transferu blokowego powoduje, że komputer wczytuje z dysku do pamięci bloki po kilka sektorów naraz, co zwiększa wydajność twardego dysku. Trzeba jednak uważać, gdyż starsze modele dysków nie radzą sobie z tą opcją.
• Video BIOS Shadow - włączenie tej opcji powoduje skopiowanie BIOS-u karty graficznej z pamięci typu ROM do szybkiej pamięci RAM, co pozwala na szybszy dostęp i ma wpływ na działanie programów i systemów graficznych (MS Windows).
• CPU Level 1 Cache - pozwala włączyć pamięć cache pierwszego poziomu.
• CPU Level 2 Cache - pozwala włączyć pamięć cache drugiego poziomu.
• Quick Power On Self Test - jeżeli chcemy, by proces uruchamiania komputera przebiegał nieco szybciej, warto uaktywnić opcję.
• Boot Sequence - umożliwia ustawienie kolejności przeszukiwania napędów w poszukiwaniu systemu operacyjnego.
• Boot Up Floppy Seek - jeżeli nie mamy stacji dyskietek w komputerze, należy tę opcję koniecznie wyłączyć, w przeciwnym wypadku otrzymamy komunikat o błędzie.
• Boot Up NumLock Status - jeżeli włączymy tę opcję (On) komputer uruchomi się z klawiaturą numeryczną działającą w trybie numerycznym, wyłączenie tej opcji (Off) spowoduje, że standardowo klawiatura numeryczna będzie ustawiona w trybie sterowania kursorami.
• Typematic Rate (Chars/Sec) - ustawiamy liczbę znaków wyświetlanych na sekundę podczas wciśnięcia i przytrzymania dowolnego klawisza.
• Typematic Rate Delay (Msec) - określamy (w milisekundach), po jakim czasie po naciśnięciu i przytrzymaniu dowolnego klawisza mają być wyświetlane znaki.
• Security Option - jeśli wybierzemy „System”, komputer będzie prosił o podanie hasła podczas każdego uruchamiania. Wybranie opcji „Setup” będzie wymuszało na użytkowniku podanie hasła tylko w momencie dostępu do ustawień BIOS-u, opcja ta będzie jednak uaktywniona tylko wtedy, gdy wprowadzimy jakieś hasło posługując się innym, przedstawionym niżej menu programu Setup: Supervisor Password.
• Floppy Disk Access Control - za pomocą tego parametru ustawiamy atrybuty stacji dyskietek, możemy zezwolić użytkownikom na zapis i odczyt (R/W) lub tylko odczyt (Read Only).
Chipset Features Setup
To menu zawiera głównie opcje dotyczące parametrów buforów pamięci.
• SDRAM CAS Latency - ustawiamy czas, po jakim odczytana z pamięci informacja jest dostępna (im mniejsza wartość, tym mamy wydajniejszy system).
• SDRAM Idle Timer - pozwala ustawić czas zamknięcia otwartej strony pamięci SDRAM, mniejsza wartość - wydajniejszy system.
• SDRAM RAS Precharge Time - podajemy,
co ile cykli ma być odświeżana pamięć SDRAM; im mniej, tym lepiej.
• AGP Apreture Size - pozwala sprecyzować, ile pamięci RAM może być użyte na tekstury wykorzystywane przez karty AGP.
• System BIOS Cacheable - powoduje buforowanie BIOS-u i co za tym idzie, zwiększenie prędkości systemu, który odczytuje informacje BIOS-u z bufora (szybciej), a nie bezpośrednio z pamięci FlashROM (wolniej).
• Memory Hole At 15M-16M - włączenie tej opcji rezerwuje obszar pamięci (od 15 MB do 16 MB) do wykorzystania przez karty ISA, które tego wymagają. (Uwaga - pamięć z tego przedziału staje się niedostępna dla systemu).
• Parallel Port Mode - pozwala na wybór trybu pracy (ECP lub EPP lub oba naraz) portu równoległego w naszym komputerze. Najlepiej wybrać oba naraz, dzięki temu uzyskamy pewność, że będą poprawnie funkcjonować różnego typu urządzenia podłączane do portu równoległego.
• IDE Ultra DMA Mode - jeżeli dysk twardy zainstalowany w naszym komputerze działa w trybie UDMA, należy uaktywnić tę opcję.
• IDE Master/Slave PIO DMA/Mode - pozwala ustawić dla konkretnego kanału IDE typ podłączonego do niego napędu, dostępne są opcje: auto, 0, 1, 2, 3, 4.
PNP and PCI Setup
Konfiguracja slotów do kart rozszerzeń.
• PNP OS Installed - pozwala określić, czy używamy systemu operacyjnego wspomagającego obsługę urządzeń o charakterze Plug and Play.
• Slot IRQ - możemy dla poszczególnych slotów przydzielić konkretne przerwania lub zlecić to systemowi (Auto).
• IRQ Used By ISA - pozwala określić, czy dane przerwanie jest wykorzystywane przez kartę rozszerzeń typu ISA.
• DMA Used By ISA - określamy, czy konkretny kanał DMA jest używany przez karty ISA.
• VGA BIOS Sequence - jeżeli nasz komputer ma dwie karty graficzne (jedną opartą na złączu PCI, drugą AGP), możemy za pomocą tej opcji określić priorytety dla tych kart.
Power Management Setup
Opcje znajdujące się w tym menu umożliwiają redukcję poboru mocy przez nasz komputer.
• Power Management - mamy tu możliwość wybrania kilku, z góry określonych, typów ustawień (Max Saving, Min Saving), wyłączenia jakichkolwiek funkcji oszczędzania energii (Disable) lub zdefiniowania ich samemu (User Define).
• HDD Power Down - ustawiamy, po jakim czasie bezczynności ma się wyłączyć dysk twardy naszego komputera.
• Suspend Mode - określamy czas, po którym komputer przechodzi w stan czuwania (Suspend) lub możemy tę funkcję wyłączyć (Disable).
• PWR Button - możemy ustawić, jaką funkcję ma pełnić przycisk wyłączania komputera (czy ma po prostu wyłączać komputer czy ustawiać go w stan uśpienia - Suspend).
• PWR Up On Modem - pozwala uaktywnić funkcję budzenia komputera przez modem.
• AC PWR Loss Restart - określamy, jak nasz komputer ma zareagować na brak zasilania, możemy ustawić opcję ponownego uruchomienia, gdy już komputer będzie zasilany.
• Wake On LAN - pozwala uaktywnić funkcję budzenia komputera przez sieć lokalną.
• Automatic Power Up - możemy ustawić godzinę, o której komputer ma się automatycznie uruchomić.
• Fan Monitor - pokazuje liczbę obrotów na sekundę wiatraczka na procesorze.
• Thermal Monitor - pokazuje aktualną temperaturę otoczenia procesora.
• Voltage Monitor - pokazuje napięcia podawane na procesor.
Komputer - jak to działa?
W każdym komputerze znajduje się procesor (CPU) taktowany pewną częstotliwością wyrażaną w megahercach (MHz), wynikającą z krotności częstotliwości taktowania zegara (np. Celeron 333 MHz nominalnie jest taktowany 66 MHz zegara razy 5). Procesor jest umieszczony w specjalnym złączu na płycie głównej (MotherBoard), która ma magistrale np. ISA, PCI. Magistrala to rodzaj złącz na płycie (tzw. slotów), w które wkładane są karty rozszerzenia (graficzna, muzyczna itd.). Może mieć ona, w zależności od typu, różną przepustowość mierzoną w MBit/s oraz częstotliwość taktowania - pochodną częstotliwości zegara, co w sumie określa wydajność magistrali.
Procesor przetwarza informacje zgromadzone w pamięci operacyjnej (RAM). Ponieważ pamięć ta jest za wolna dla procesora, dane, nim do niego trafią, wędrują do szybkiej pamięci cache (SRAM) drugiego poziomu (L2), umieszczonej na płycie głównej (tzw. External cache), no chyba że posiadamy procesor Pentium II lub Celeron, w którym cache L2 jest zintegrowany z procesorem. Następnie informacje wędrują do pamięci cache pierwszego poziomu (L1), znajdującej się wewnątrz kości procesora (tzw. Internal cache). To podwójne buforowanie ma duży wpływ na prędkość przetwarzania danych przez procesor.
Informacje już przetworzone przez procesor zapisywane są na dysku twardym (HDD), który współpracuje z innymi urządzeniami komputera poprzez kontroler IDE lub SCSI. Kontroler w obecnie produkowanych płytach znajduje się na samej płycie. Prędkość dysku zależy od prędkości magistrali. Na ogół pracując na komputerze wykorzystujemy interfejs graficzny, który wymaga szybkiego przepływu informacji. To, czy i jak nasza karta graficzna poradzi sobie z tym zadaniem, zależy od prędkości magistrali, z którą współpracuje (dana karta może współpracować tylko z magistralą, dla której jest zaprojektowana, np. PCI, AGP).
Wpływ na to wszystko daje nam Setup BIOS-u.
Load BIOS Defaults; Load Setup Defaults
Dzięki tym opcjom możemy powrócić do standardowych ustawień Setupu BIOS-u. Jest to jednak wyjście ostateczne, bo jak ostrzegają sami producenci płyt głównych - ustawienia te nie są optymalne i dalekie od ustawień dla konkretnych konfiguracji.
• Supervisor Password - pozwala ustawić hasło zabezpieczające zarówno system, jak i dostęp do Setupu BIOS-u.
• User Password - pozwala ustawić hasło zabezpieczające system. Uwaga! Jeżeli za pomocą jednej z dwóch powyższych opcji ustawimy hasło dostępu do systemu i następnie je zapomnimy, jedynym wyjściem będzie skasowanie wszystkich ustawień BIOS-u za pomocą zwarcia odpowiednich wyprowadzeń na płycie głównej (proces ten jest opisany w każdej instrukcji do płyty głównej).
• IDE Autodetection - pozwala przeprowadzić automatyczne wykrywanie dysków twardych, w jakie wyposażony jest komputer.
• Save & Exit Setup - wybierając tę opcję, decydujemy się na zapisanie wszystkich dokonanych przez nas zmian w pamięci CMOS i wyjście z Setupu BIOS-u.
• Exit Without Saving - opuszczamy program konfiguracyjny BIOS-u z pominięciem dokonanych przez nas zmian.