| |||||||
| Registracija | FAQ | Lista korisnika | Kalendar | Pretraži | Današnje Poruke | Označi forume pročitanima | Online igre |
| Računala Raspravljate o temi Struktura Dos-a u Tehnologija i Tehnika forumu; 1 STRUKTURA DOS-a DOS je komercijalni program, ali svojom strukturom znatno se razlikuje od tih programa. Jedan dio tog ... |
![]() |
| | Opcije Teme |
| | #1 (permalink) |
| Administrator | Struktura Dos-a 1 STRUKTURA DOS-a DOS je komercijalni program, ali svojom strukturom znatno se razlikuje od tih programa. Jedan dio tog programa nalazi se na matičnoj ploči PC računala zapisan u memoriji ROM. Drugi dio DOS-a instalira se na tvrdi disk (HDD). Opercijski sustav DOS čine četiri međusobno povezane cjeline: 1. BIOS (Basic Input Output System) 2. DOS jezgra (Kernel) 3. Komandni procesor (COMMAND.COM) 4. DOS uslužni programi Međusobne veze ovih cjelina: 1.1 BIOS BIOS je skup osnovnih instrukcija i upravljačkih programa (drivera) za monitor, tipkovnicu, printer, portove, sistemski sat i uređaj s kojeg se podiže sustav (HDD). Ugrađen je u ROM-u i sastvni je dio matične ploče. Mora biti kompatibilan s IBM BIOS-om. Zadaća BIOS-a je posredovanje između zahtjeva preostalih dijelova DOS-a i svih perifernih uređaja. BIOS prevodi svaki pojedinačni zahtjev OS u niz instrukcija koje upravljaju nekim od sklopova. BIOS se sastoji od velikog broja programiranih rutina za izravnu komunikaciju s hardverom. Te rutine još se nazvaju i elementarnim BIOS-funkcijama. Većina viših programskih jezika dopušta u pojedinim slučajevima i izravnu komunikaciju s BIOS-om, zaobilazeći na taj način neke od funkcija DOS-a. Time se postiže veća brzina izvršavanja programa, ali to programiranje zahtjeva veliki oprez jer može doći do nekontroliranog rada programa i računala kao sustava. BIOS se neprestano usavršava, razvija i proširuje mogućnosti. Prvi BIOS-i bili su veličine 8Kb, a današnje generacije BIOS-a veličine su 128Kb. Osnove BIOS-a Što se nalazi u BIOS-u U BIOS-u se nalazi skup programa koji pružaju osnovnu podršku za rad računala. Tri su glavna dijela BIOS-a. 1.) Prvi se dio koristi kod uključenja računala. To su programi za provjeru (POST) i inicijalizaciju koji provjeravaju da li je računalo u ispravnom stanju. 2.) Drugi dio su rutine BIOS-a. Ti programi pružaju detaljan i potpun nadzor nad dijelovima računala, naročito U/I uređajima poput diskovnih pogona, koji zahtjevaju pažljivi nadzor (uključujući i iscrpnu provjeru pogrešaka). BIOS nudi dug popis usluga koje su dostupne i operativnom sustavu i aplikacijskim programima. 3.) Treći dio je ROM-BASIC. To je ugrađeno još kada se stroj budio u BASIC-u. Taj je BASIC bio srce BASIC programskog jezika, koji se koristi bilo sam, bilo kao dio starijeg dijalekta BASIC-a. Noviji dijalekti BASIC-a ne ovise o ROM-BASIC-u. Novi PC nemaju ugrađen BASIC kao dio ROM-a. Svi BIOS progami nalaze se u području veličine 128 kB, E i F blokova memorije (od E000 do FFFF). Količina iskorištenog memorijskog prostora razlikuje se od modela do modela. Neke kartice (VGA kontroleri i SCSI kontroleri mogu imati vlastiti ROM-BIOS za nadzor vlastitih funkcija. U nekim slučajevima ROM-BIOS na kartici može nadomjestiti BIOS na matičnoj ploči. Ta se opcije može podesiti putem softvera tijekom instalacije ili pomoću prekidača (jumpera) na kartici. Što radi BIOS BIOS je dizajniran tako da izravno nadzire hardver i da odgovara na sve zahtjeve hardvera. To se radi u velikoj mjeri pomoću portova. Svi se dijelovi PC-a nadziru naredbama ili parametrima koji se šalju putem portova, pri čemu svaki dio PC-a odgovara na posebe brojeve portova. Većina iznimki općenitog pravila da se hardver nadzire putem portova su upravo dijelovi računala s kojima programi mogu izravno raditi. To su dijelovi koje BIOS ne treba nadzirati. BIOS se ne bavi samo portovima. Portovi najbolje simboliziraju ono što je posebno kod BIOSa : to je softver koji najbliže surađuje sa hardverom i brine se o hardverskim detaljima (poput portova) koje drugi programi ne bi trebali dirati. Zbog toga što je BIOS pisan za blizak rad sa hardverom mora biti dobro upoznat sa načinom na koji hardver radi. Sve do pojave PS/2, IBM je objavljivao ispise programa koji su sačinjavali BIOS. Iz tih ispisa vidljivo je da se BIOS brine da pravi portovi šalju prave naredbe hardverskim komponentama. Osim toga BIOS se brine za jedva zametljive detalje poput vremenskog usklađivanja ili načina na koji doista dolazi do pogrešaka. Primjerice, neki sklopovi mogu primiti naredbe bilo kada, ali im je potrebno vrijeme da bi obradili jednu naredbu prije nego što prime drugu. U drugim slučajevima potrebno je obaviti dva odvojena koraka uz što kraće čekanje. Istančane stvari poput tih kriju se unutar BIOS-a. Kako radi BIOS BIOS mora raditi tako da pruža maksimalnu fleksibilnost, najmanje opterećuje programe koji ga koriste i radi uz maksimalnu moguću sigurnost od poremećaja rada računala. BIOS rutine moraju, što je moguće rijeđe, odgađati prekide. Prekidi se ne smiju zanemarivati ni odgađati. Ponekad je potrebno obaviti nekoliko ključnih koraka bez prekida. BIOS mora te koraka držati što je moguće kraćima. Budući da obavlja većinu svojega posla dok su prekidi aktivni, druge BIOS usluge koje se pokreću putem prekida mogu se aktivirati dok BIOS obavlja ranije zatražene usluge. BIOS rutine moraju se programirati tako da sljede određene zakonitosti nazvane kodiranje s ponovnim ulazom (re-entrant coding). Programi s ponovnim ulazom, poput ROM-BIOS-a, dizajnirani su tako da podatke s kojima trenutno rade i status informacije koje se tiču svakog poziva usluge drže odvojene jedne od drugih. Svi se podaci drže na stogu. Premda kodiranje s ponovnim ulazom nije teško, mora se pažljivo programirati i držati se ograničenja u pogledu načina na koji se informacije mogu prosljeđivati između BIOS-a i bilo kojeg programa koji traži BIOS usluge. Većina BIOS-ovog dizajna proizlazi iz zahtjeva za programiranjem s ponovnim ulazom. BIOS je ugrubo podijeljen na tri dijela. Prvi dio sadrži rutine za podizanje sustava. Dva su glavna dijela rutina za podizanje sustava. Prve rutine pripadaju samoprovjeri prilikom uključivanja (POST – power-on self-test). One provjeravaju ispravnost memorije i obavljaju druge provjere da bi bile sigurne da računalo ispravno radi. Drugi dio procedure podizanja je inicijalizacija. Inicijalizacije uključuje i stvari poput kreiranje prekidnih vektora, tako da kada dođe do prekida, izvođenje se prebacuje na odgovarajuću proceduru za rukovanje prekidima. Inicijalizacija uključuje i podešavanje opreme računala. Mnogim dijelovima računala treba postaviti registre, učitati parametre i obaviti druge stvari kako bi bili spremni za rad. BIOS poznaje pun skup standardne opreme PC-a, pa obavlja inicijalizaciju za svaki pojedini dio. U inicijalizaciju je uključena i provjera koja se oprema nalazi u PC-u. Nešto od toga se doznaje provjerom odrednica unutar PC-a (u slučaju orginalnog PC modela) ili čitajući trajnu memoriju koja bilježi opremu koju ima računalo (u slučaju novijih PC-a). U nekim slučajevima, BIOS može pronaći koja je oprema instalirana samo time što će je elektronički ispitati i provjeriti odgovore. BIOS provjerava i inicijalizira svu opremu kojom zna rukovati. PC-u se može dodati i nova oprema. Nešto od te opreme je standardi dio (dodatne memorija, dodatni serijski i paralelni portovi), ali je dio opreme nestandardan. Za taj dio je potrebna posebna BIOS podrška. Da bi se povelo računa o toj situaciji BIOS je spreman tražiti i dodatke BIOS-u. Da bi se BIOS-u omogućilo rad sa tim nestandardnim komponentama potrebno je proširiti BIOS. Dodaci BIOS-u se označavaju tako da ih standardni BIOS može prepoznati i omogućiti im integraciju u standarni dio. Poput glavnog BIOS-a koji se pojavljuje na određenim lokacijama u memoriji (E i F blokovi) i dodaci imaju za sebe rezervirano standardno područje memorije - C i D blokove (memorijske segmenti od C000 do DFFF). Svaka nova oprema koja zahtjeva posebnu BIOS podršku, poput optičkog diska, smješta svoju BIOS memoriju samo za čitanje negdje u taj blok i u nju uključuje i posebnu oznaku, 55AA, u prva dva bajta. BIOS dodatak se ne može učitati bilo gdje. To mora bit jedinstvena lokacija koja nije u sukobu niti sa jednim drugim BIOS proširenjem, a mora počinjati sa memorijskom granicom od 2 kB. Standardni (glavni) BIOS, kao dio rutina prilikom podizanja sustava, pretražuje područje BIOS proširenja, čime se BIOS proširenju omogućuje da obavi sve što je potrebno da bi se inicijalizirala njegova oprema i integrirala u ostatak BIOS-a. Primjerice BIOS proširenjem za novi tip video kartice može se promijeniti prekidni vektor za video usluge kako bi ih usmjerio na BIOS proširenje, umjesto na standardne BIOS video rutine. BIOS proširenje obavlja sve potreben inicijalizacijske rutine i rutine za podizanje kada mu glavni BIOS prepusti nadzor tijekom procedure podizanja sustava. Kada je BIOS proširenje inicijalizirano, ono vraća nadzor glavnom BIOS-u, a računalo nastavlja uobičajnom procedurom. Međutim sada su dodani i nova oprema i proširenje BIOS-a za tu opremu. To je omogućeno mehanizmom koji omogućuje glavnom BIOS-u pretraživanje i prepoznavanje BIOS proširenja. Posljednji dio rutina za podizanje je rutina za podizanje sustava. Ta rutina pokreće operativni sustav. Proces podizanja sustava sastoji se i od toga da BIOS pokuša pročitati zapis podizanja (boot record) s početka diska. BIOS može pročitati zapis podizanja sa diskete (sistemska disketa) ili sa diska. Današnji BIOS-i mogu pročitati zapis podizanja i sa CDa, SCSI uređaja i sl. U CMOS Setupu odabire se redosljed traženja zapisa podizanja. Ako se zapis podizanja ne pronađe na jednom mediju provjerava se sljedeći po odabranom redosljedu. Ako se ne može podići sustav ni sa jednog medija, ispisuje se poruka. Program za podizanje (boot program) počinje postupak učitavanja operativnog sustava. 1.2 DOS jezgra (KERNEL) DOS jezgra je osnovni dio DOS-a. To je operacijski sustav u užem smislu. Svi programi koji se obraćaju OS komuniciraju s jezgrom DOS-a. Jezgra DOS-a sastoji se od velikog broja pojedinačnih funkcija koje nisu vidljive krajnjem korisniku a poznate su pod imenom elementarne DOS-funkcije. Kada korisnik ili tekući program uputi neki zahtjev OS-u, jezgra DOS-a ga prevodi u u odgovarajući niz poziva elementarnih funkcija. Neke od najznačajnijih funkcija DOS jezgra: - upravljanje memorijskim resursima - upravljanje datotekama (kreiranje, brisanje, modificiranje) - upravljanje direktorijima (kreiranje, brisanje, modificiranje, upis) - iniciranje početka i završetka programa - upravljanje znakovno orjentiranim U/I - kontrola ulazno-izlaznim portovima DOS jezgra nalazi se u datotekama MSDOS.SYS i IO.SYS. Kernel se učitava u radnu memoriju (RAM) za vrijeme početnog punjenja DOS-a i to upravo iz tih datoteka. Korisnik ne može izravno komunicirati s jezgrom DOS-a neko s komandnim procesorom. 1.3 Komandni procesor (COMMAND.COM) Komandni procesor je onaj dio operacijskog sustava s kojim se korisnik nalazi u stalnoj komunikaciji. Ovaj dio DOS-a je program koji prihvaća, interpretira i provodi izvođenje naredbi koje izdaje korisnik. Svaka korisnikova naredba upućena OS izdaje se ukucavanjem niza znakova na tipkovnici. Te znakove treba prevesti u pozive odgovarajućih funkcija jezgre DOS-a. Tu zadaću obavlja komandni procesor. Uz DOS se standarno isporučuje komandni procesor koji se nalazi datoteci COMMAND.COM. Komandni se procesor često naziva i ljuska sistema (Shell). Kada se napuni u memoriju komandni procesor sadrži tri osnovna dijela: - rezidentni dio - Inicijalni ili startni dio - prijelazni ili tranzijentni dio 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 na viš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. Inicijalni 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. Tranzijentni dio Biti će napunjen na najvišim adresama raspoložive RAM memorije. Taj dio komandnog procesora obavlja najviše funkcija. On je zadužen za preuzimanje poslova sintaksne analize korisničkih naredbi i njihovo prevođenje u niz poziva odgovarajućih sistemskih funkcija jezgre DOS-a. 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 tijekom izvršavanja drugih programa ovaj dio privremeno se uklanja iz memorije kako bi se oslobodio prostor potreban za rad programa. Po završetku rada programa kontrolu nad sustavom preuzima rezidentni dio komandnog procesa. 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. 1.4 Uslužni programi Uslužne programe ne možemo smartati sastavnim dijelom operacijskog sustava u užem smislu. Uz DOS se isporučuje i čitav niz korisnih pomoćnih programa koji bitno unapređuju sigurnost podataka, iskorištenje memorije i jednostavnost u radu s DOS-om. Ti programi su: - DOSKEY - DOSSHELL - EDIT - DBLSPACE - DEFRAG - FDISK - HELP - INTERLINK - MSBACKUP - MSD - UNDELETE - MSAV - QBASIC 1.5 DOS NAREDBE Naredbe DOS-a mogu se podijeliti prema načinu pozivanja na izvođenje i prema funciji koje izvode. Podjela naredbi prema načinu pozivanja: - interne naredbe - ekstrne naredbe Podjela prema funkcijama koje izvode: - naredbe za upravljanje direktorijima - naredbe za rad i upravljanje datotekama - naredbe za rad s diskom i disketama - Batch naredbe - naredbe za konfiguriranje sustava
__________________ Registriraj se na Croportal Forum ovdje | Što je Croportal - Vodič za korisnike Croportal.net - Najnovije surf vijesti | Croportal API - Tools, feeds, widgets... | Croportal.net - Dodaj Surf Zadnji Uredio Kristijan : 21-10-05 u 16:13. |
| | |
![]() |
| Tagovi: dosa, struktura |
| Broj korisnika koji trenutno prate ovu Temu: 1 (0 članova i 1 gosta) | |
| Opcije Teme | |
| |
Trenutno vrijeme na forumu: 22:52.












