| |||||||
| Registracija | FAQ | Lista korisnika | Kalendar | Pretraži | Današnje Poruke | Označi forume pročitanima | Online igre |
| Računala Raspravljate o temi Inicijalizacija računala i pokretanje operativnog sustava u Tehnologija i Tehnika forumu; 1. Uključenje ili RESET računala Inicijalizacija i pokretanje procesora računala provodi se dovođenjem reset ulazne nožice (pina) u stanje ... |
![]() |
| | Opcije Teme |
| | #1 (permalink) |
| Administrator | Inicijalizacija računala i pokretanje operativnog sustava 1. Uključenje ili RESET računala Inicijalizacija i pokretanje procesora računala provodi se dovođenjem reset ulazne nožice (pina) u stanje logičke jedinice (high, “1”). Sistemski reset "očisti" internu logiku procesora i aktivan je u “1”. Procesor se resetira prijelazom iz “1” u “0” (LOW). Reset traje minimalno 16 ciklusa sistemskog takta. On prisiljava procesor da okonča svo izvršavanje i aktivnost na lokalnoj sabirnici. Nakon prekida reseta, procesor započinje izvršavanje u realnom načinu rada , počev sa instrukcijom na linearnoj adresi FFFFF0H. Reset također postavlja registre na definirane vrijednosti. Reset računala može se provesti i pomoću 8042 čipa, čiji je jedan izvod (pin) fizički spojena na reset procesora. Slanjem logičke nule na taj izvod izravno se vrši prijelaz iz "1" u "0" na resetu procesora. Mali program koji to čini, pisan u assembleru izgledao bi ovako: seg_a segment byte public assume cs:seg_a, ds:nothing, es:nothing org 100h start: mov al, 0feh out 64, al mov ah,4ch int 21h seg_a ends end start 1.1. COLD BOOT ili hladni reset Ponaša se kao hardverski reset na kućištu (ali samo logički). Potrebno je učiniti instrukcijski skok na adresu FFFF:0000 nakon što se postavi vrijednost npr. FFFFH na adresi 40:72. Vrijednost različita od 1234H naređuje BIOS-u da testira memoriju. 1.2. WARM BOOT ili topli reset Je doskočica za preskakanje POST rutine, a princip je isti kao i kod hladnog reseta, samo se na 40:72 ne postavlja vrijednost FFFFH nego 1234h, koja označava "ctrl+alt+del flag", odnosno isključuje test memorije. 2. POST - Power-On Self Test POST je program koji obitava u ROM memoriji računala i pokreće se nakon prvog uključenja, ili hladnog reseta. Izvršava sljedeće funkcije: Provjerava CMOS memoriju kako bi odredio priključenu perifernu opremu, te postavlja markere na listi opreme (engl. Equipment List bit flags). Ovi markeri identificiraju instalirane i/ili aktivne komponente računala. Listu opreme može se pronaći u BIOS-ovom podatkovnom području na adresi 0:0410. CMOS je popularno ime za 64B izbrisive memorije, čiji se sadržaj čuva uz pomoć baterije. Ova memorija pohranjuje raznovrsne podatke, uključujući trenutno vrijeme i datum, konfiguraciju računala i statusni bajt isključenja (koji se koristi pri izlasku iz zaštićenog načina rada i povratku u realni). Ako tijekom POST rutine računalo ispiše poruku "Run Setup", to je stoga što stanje nekog dijela hardwarea ne odgovara konfiguracijskom zapisu u CMOS-u, ili postoji neki drugi problem vezan za CMOS memoriju. Provjerava RAM memoriju i upisuje testne podatke na sve adrese (neophodno radi detekcije grešaka u RAM-u), te provjerava osnovne komponente (DMA, prekidi, disk, tipkovnica, i sl.) Provodi tzv. ROM-Scan u svrhu instaliranja dodatnog firmwarea i inicijalizacije nado-građenog hardwarea. ROM-Scan je operacija traženja eksternog BIOS-a koji se obično nalazi na ugradbenim karticama (npr. zvučna kartica, mrežna kartica, SCSI controller, itd.). Eksterni ROM moduli mogu postojati između adresa C800:0000 i E000:0000. U svakom bloku veličine 2K unutar ovog opsega traži se određena signatura koja naznačuje prisutnost ROM modula. Izvršava bootstrap sekvencu čiji je zadatak učitati operativni sustav. Provjerava CMOS adresu 0FH (i BIOS-ovo podatkovno područje na adresi 0:0472), kako bi izvršio eventualne dodatne operacije. 3. Glavni startni zapis (Master Boot Record, MBR) Na kraju svoga izvršavanja, POST rutina kontrolu predaje vektoru prekida 19H. Ovaj se prekid poziva u svrhu učitavanja prvog sektora primarnog floppy diska, ili (ako disketa nije u pogonu) prvog sektora primarnog hard diska (C: drive). Novija računala imaju više mogućnosti odabira medija, pa tako u obzir dolaze i CD-ROM diskovi, ZIP diskovi i sl. Na disketi formatiranoj od strane DOS-a, prvi sektor zove se boot sektor, a sarži startni zapis ili engl. boot record (BR). Startni zapis počinje na stazi 0, sektor 1, strana 0 svake diskete formatirane DOS-om. Kod tvrdog diska, startni zapis počinje od prvog sektora DOS particije. Prvi fizički sektor svakog tvrdog diska počinje na strani 0 (head 0), cilindru 0, sektoru 1 i zove se root sektor (engl. root, korijen). Root sektor sadrži Glavni startni zapis ili MBR (engl., Master Boot Record). Kod podizanja sistema sa tvrdog diska - po uključenju računala - nakon što POST učita 512 bajtova MBR-a sa root sektora na adresu 0000:7C00 u memoriji, on provjerava da li posljednja dva bajta (0000:7DFE) odgovaraju heksadecimalnoj vrijednosti 55AA. Ako je ta vrijednost nađena, POST kontrolu izvršavanja predaje programu koji se nalazi na početku učitanog MBR-a. (Engleski termin za taj program je bootstrap loader ili kraće boot loader, a hrvatski prijevod je suviše nezgrapan da bi ga autor ponudio kao aktivnu zamjenu.) Osnovni zadatak boot loadera je pročitati particijsku tablicu i odrediti da li postoji particija označena kao aktivna. Ako ju nađe, on učitava starni zapis sa boot sektora aktivne particije. Time je njegov zadatak izvršen jer je programski kod boot sektora vlasništvo operativnog sustava, kome je time predao daljnju kontrolu izvršavanja. MBR se, dakle, sastoji od programa za učitavanje operativnog sustava na početku (boot loadera), za kojim slijedi particijska tablica sa četiri ćelije i signatura MBR-a (broj 55AA). Posve prazan disk je nalik na neispisani list papira. Kada dotični disk instalirate i uključite računalo, javiti će vam se poruka “PRESS A KEY TO REBOOT”. Naime, ako BIOS po uključenju ne nađe signaturu 55AA (a prazan disk ju ne sadrži), on pretpostavlja da ne postoji niti boot loader kome bi predao kontrolu izvršavanja. Daljnje naređenje mu je da ispiše navedenu poruku i time okonča rad na takvom računalu. To je nulti stupanj podizanja operativnog sustava - nulti zato što još nije učitano ništa karakteristično za neki operativni sistem. Za potrebe nultog stupnja rezervirana je cijela nulta staza (na nultom cilindru), koja se stoga naziva root track (engl. root track = korijenska staza). U DOS-like sustavima obično je samo prvi sektor te staze popunjen (root sektor sa MBR-om), dok je ostatak neiskorišten. U ostalim slučajevima moguće je da ostatak traga 0 (ili staze 0), nakon root sektora, bude ispunjen boot loaderom, antivirusnim programom, virusom, rezervnim kopijama vitalnih područja operativnih sustava i sl. Kako bi rad na disku bio moguć, potrebno je dakle imati, ili nekako napraviti, MBR. Za to se obično koriste programi kao što je FDISK, Partition Magic,PFDISK, CFDISK, Disk Manager, itd. Većinom takvih programa moguće je napraviti i sljedeći stupanj u postavljanju operativnog sustava - particioniranje diska. Tvrdi se disk može sastojati od jednog ili više dijelova, particija. Svaka je particija jedan logički disk sa vlastitom identifikacijom, npr. C:, D:, E:, itd. Particijska tablica u tom slučaju sadrži izgled diska i početni i završni cilindar svake particije. Particijska tablica sadrži informaciju o operativnom sistemu pojedine particije, kao i podatak sa koje se particije diže sistem (koja je particija bootabilna). Particijska se tablica često naziva MBR-om, iako je ona samo dio Master Boot Recorda. 4. Startni zapis (Boot Record, BR) Na koncu svog izvršavanja, glavni startni zapis (MBR) predaje kontrolu startnom zapisu na početku aktivne particije. Startni zapis sadrži jedan vrlo malen program - tek nekoliko stotina bajtova velik - koji ima zadatak učitavanja DOS-ovih sistemskih datoteka u memoriju računala i njihova izvršavanja. On sadrži i BPB (BIOS Parametar Blok) s informacijama o veličini direktorija, broju sektora po stazi, veličini sektora, broju sektora po clusteru, broju sakrivenih sektora, itd. One se upisuju na disk prilikom formatiranja. DOS pri svakom pristupanju disku koristi ove podatke, međutim, on ih očitava samo kada je disketa u disketnoj jedinici zamijenjena ili kada je sistem resetiran. Posljednja dva bajta boot sektora moraju sadržavati signaturu 55AA. Startni se zapis nalazi na svakoj disketi ili disku, bez obzira da li je on sistemski ili nije. Na kraju, ukoliko je u pitanju sistemski disk, startni zapis sadrži adresu programa kojeg treba automatski učitati u memoriju i izvršiti. Ako pokušate podići sistem (bootati) sa diska na kojem se ne nalaze sistemske datoteke (IO.SYS, MSDOS.SYS ili IBMBIO.COM, IBMDOS.COM te COMMAND.COM), on će vas upozoriti na tu činjenicu i zamoliti da umetnete sistemski disk kako bi mogao nastaviti podizanje operativnog sustava (bootanje). 5. ROM BIOS interface Operativni sustav koristi isključivo BIOS za sve ulazno-izlazne operacije. On to čini preko jednog programa koji ima ulogu posrednika (interfacea) između BIOS-a i sustava. Taj se program zove IO.SYS (ili IBMBIO.COM). Osim toga, ovaj program inicijalizira i različite dijelove hardwarea (npr. memoriju, komunikacijske kanale itd.). IO.SYS (IBMBIO.COM) sadrži upravljačke programe (eng. device drivers) za tipkovnicu, ekran, pisač, diskove i sistemski sat. On ima zadatak učitati DOS programsku datoteku u memoriju. Na kraju, on učitava procesor naredbi (sistemsku ljusku) i predaje mu kontrolu. 6. DOS programska datoteka DOS programska datoteka je operativni sustav u užem smislu riječi. Ona osigurava vezu s aplikacijskim programima na visokom, strojno neovisnom nivou. Ova datoteka zove se MSDOS.SYS (IBMDOS.COM). Od DOS-a 7.0 MSDOS.SYS više nema tu ulogu, već je ona integrirana u IO.SYS. MSDOS.SYS je u tekstualnom formatu i služi radi kompatibilnosti, te za pohranu korisničkih opcija (npr. LOGO=(0 ili 1) uvjetuje prikazivanje "splash screena", tj. logo ekrana kod bootanja i sl.). U verzijama prethodnim DOS-u 7.0, MSDOS.SYS sadrži rutine za upravljanje datotekama, dok uređajima upravlja pozivajući rutine iz IO.SYS (IBMBIO.COM). 7. Procesor naredbi (korisnička ljuska ili shell) Procesor naredbi ili tzv. korisnička ljuska (engl. shell, ljuska) COMMAND.COM je izvršni kontrolni program koji predstavlja vezu između korisnika i operativnog sustava. Figurativno rečeno, to je dio ledenog brijega (operativnog sustava) koji korisnik vidi pri radu s računalom. COMMAND.COM interpretira naredbe i omogućuje izvršavanje programa. On se sastoji od tri dijela: 7.1. Rezidentni dio Nalazi se u memoriji, neposredno nakon IO.SYS (IBMBIO.COM) i MSDOS.SYS (IBMDOS.COM) i njihovih područja za podatke. Ovaj dio sadrži rutine za povratak iz korisničkog programa (aplikacije), za obradu prekida u slučaju pritisnutih tipki Ctrl+Pause (Break funkcija) i za obradu kritičnih grešaka. Kod verzija DOS-a od 3.0 naviše također sadrži rutinu za punjenje i izvršavanje eksternih naredbi, kao što je pokretanje datoteka tipa .COM i .EXE. Također obrađuje i standardne greške i ispisuje poruku tipa “Abort, Retry, Ignore” i sl. 7.2. Inicijalizacijski dio Nalazi se iza rezidentnog dijela i ima kontrolu nad sistemom za vrijeme pokretanja. Ovaj dio vrši pripremu za izvršavanje AUTOEXEC.BAT datoteke određujući segmentne adrese od kojih će programi iz datoteke biti napunjeni. Kada COMMAND.COM učita prvi program, on će to učiniti preko inicijalizacijskog dijela, jer ovaj u daljnjem radu nije potreban. 7.3. Tranzijentni dio Biti će napunjen na najvišim adresama raspoložive RAM memorije. To je procesor naredbi u užem smislu, jer u sebi sadrži interpreter internih naredbi i procesor batch (.BAT) datototeka. Kod verzija DOS-a 2.x sadrži i rutinu za punjenje i izvršavanje eksternih naredbi, kao što su datoteke tipa .COM ili .EXE. On također ispisuje na ekranu poznati odzivni znak (prompt), učitava internu naredbu sa tipkovnice ili iz .BAT datoteke i izvršava ju. U slučaju eksternih naredbi, formira naredbenu liniju i poziva DOS-ovu rutinu EXEC koja predaje kontrolu zadanom programu. Tranzijentni dio je dobio naziv po tome što se uvijek nalazi u memoriji računala. Preko njega se može učitati neki drugi (tranzijentni) program. Po okončanju ovog programa, rezidentni dio COMMAND.COM-a ponovno učitava tranzijentni dio. |
| | |
![]() |
| Tagovi: inicijalizacija, operativnog, pokretanje, racunala, sustava |
| Broj korisnika koji trenutno prate ovu Temu: 1 (0 članova i 1 gosta) | |
| Opcije Teme | |
| |
Slične Diskusije | ||||
| Tema | Pokretač teme | Forum | Odgovora | Zadnja poruka |
| Windows NT Boot Proces | Kristijan | Računala | 0 | 21-10-05 16:17 |
Trenutno vrijeme na forumu: 23:41.













