1 / 18

Operativni sistemi

Operativni sistemi. Čas 4. Vezivanje fajlsistema. Vezivanje: mount –t tip uređaj direktorijum Uređaj se može vezati i na više lokacija u fajlsistemu. Uklanjanje: umount direktorijum Argument umount komande može biti i uređaj ako je vezan na samo jednom mestu u sistemu.

alva
Télécharger la présentation

Operativni sistemi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Operativni sistemi Čas 4

  2. Vezivanje fajlsistema • Vezivanje: mount –t tip uređaj direktorijum • Uređaj se može vezati i na više lokacija u fajlsistemu. • Uklanjanje: umount direktorijum • Argument umount komande može biti i uređaj ako je vezan na samo jednom mestu u sistemu. • Direktorijum ne mora biti prazan da bi se na njega vezao fajlsistem, ali njegov sadržaj će biti sakriven dok je fajlsistem vezan. • Informacije o povezanim sistemima se pišu u /etc/mtab

  3. fstab • Sadrži statičke informacije o fajlsistemima. • Unosi su oblika uređaj direktorijum tip opcije fs_freq fs_passno • fs_freq određuje raspored arhiviranja. • fs_passno određuje redosled proveravanja uređaja prilikom podizanja sistema. • Neke od mogućih opcija su • auto, default, users, owner, group, noauto, nouser, ro, rw • mount –a vezuje sve fajlsisteme iz fstab-a osim ako imaju noauto opciju. Ova komanda se izvršava prilikom inicijalizacije sistema da bi povezala ove fajlsisteme.

  4. Particije • Tradicionalno sistemi nalik Unix-u dele diskove na particije. • Na svakoj se može nalaziti fajlsistem, a oni se mogu kombinovati u jedinstven VFS. • Particije predstavljaju podskupove cilindara diska.

  5. Upravljanje particijama i fajlsistemom • Particije se mogu kreirati korišćenjem programa kao što su fdisk i cfdisk. • Fajlsistem na particiji se kreira komandom mkfs. • Za ext2/ext3 možemo koristiti mke2fs (-bcjLS). • Swap particija se priprema komandom mkswap. • Sistem se proverava pomoću komande fsck (-Ay). • e2fsck (-bcfpy) za ext2/ext3. • Podešavanja za ext2/ext3 pomoću tune2fs (-clL). • df daje podatke o zauzetom prostoru na particiji ili o inodama (-i).

  6. Procesi • Proces je program u izvršenju. • Linux omogućava istovremeno izvršavanje više procesa. • Ovakvi procesi se izvršavaju u odvojenim virtualnim adresnim prostorima. • Komunikacija između procesa je moguća samo pomoću bezbednih mehanizama koje omogućava i kontroliše kernel.

  7. Procesi • Procesi u toku izvršavanja koriste razne resurse sistema (procesor, memorija, fajlovi, fizički uređaji). • Linux mora da upravlja ovim resursima u cilju pravednog izvršavanja svih procesa. • Najvažniji resurs je procesor i prilikom upravljanja procesima bitno je maksimizovati njegovu iskorišćenost.

  8. Procesi • Procesi se identifikuju identifikacionim brojevima (PID). • Informacije o procesima se čuvaju u nizu task_struct struktura (tzv. task vektor) koja sadrži sledeće informacije: • Stanje • Izvršno – proces se izvršava ili je spreman za izvršavanje • Čekanje – proces čeka neki događaj kao što je signal sistema ili hardverski resurs. • Zaustavljen • Zombi – proces koji je završio izvršavanje, ali su njegovi podaci iz nekog razloga i dalje u task vektoru.

  9. Procesi • Informacije o rasporedu (politika, prioritet, preostalo vreme...) • Identifikatori (uid, gid, effektivni uid i gid...) • Informacije o mehanizmima međuprocesne komunikacije • Pokazivači na roditeljski proces, decu i procese sa istim roditeljem. • Informacije o vremenu izvršavanja i tajmerima. • Informacije o otvorenim fajlovima. • Informacije o virtualnoj memoriji. • Sadržaj registara procesora (processor context).

  10. init • Po pokretanju sistema kreira se jedan proces – init čiji je PID 1 i koji vrši inicijalizaciju sistema npr. vezivanje root fajlsistema i pokretanje osnovnih procesa iz /etc/inittab. • init je krajnji roditeljski proces svih procesa na sistemu.

  11. Kreiranje procesa • Novi proces se u Linux-u kreira na sledeći način: • Postojeći proces pravi svoju kopiju koja dobija svoj PID, adresni prostor... Ovo se radi pomoću fork sistemskog poziva. • Kopija pokreće pomoću exec sistemskog poziva program koji je trebalo pokrenuti, koji dobija njen adresni prostor. • Novi program nasleđuje okruženje, standardni ulaz, izlaz i izalz za greške, kao i prioritet izvršavanja koji je imao polazni proces. • Na ovaj način se pokreću svi procesi osim init-a.

  12. Kompletan primer pokretanja programa • Prvi proces je init. On kreira svoju kopiju pomoću fork, a zatim kopija pomoću exec pokreće agetty program. • agetty pokreće login pomoću exec. • login pokreće bash pomoću exec. • bash pravi kopiju pomoću fork a ona pomoću exec pokreće program (npr. ls).

  13. Interaktivni procesi • Interaktivni procesi se pokreću i kontrolišu iz terminala. • Interaktivni proces može biti izvršavan vezan za terminal kada samo on može da prima ulaz sa terminala ili u pozadini kada je terminal slobodan za pokretanje drugih programa. • Procesi se mogu poslati u pozadinu ili se iz nje vratiti na terminal.

  14. Paketni (batch) procesi • Ovi procesi nisu vezani za terminal. • Oni se smeštaju u red iz koga se izvršavaju jedan po jedan.

  15. Demonski procesi • Demonski procesi su serverski procesi koji se izvršavaju u pozadini. • Oni se obično pokreću u vreme podizanja sistema i čekaju dok nekom procesu ne zatreba njihova usluga. • Neki su: init, syslogd, sendmail, crond, agetty, inetd, named, httpd...

  16. Signali • Signali predstavljaju način međuprocesne komunikacije. Služe da obaveste procese o nekim događajima u sistemu. • Procesi mogu na neki način da odgovore na signale ili da ih ignorišu. Jedini signali koji se ne mogu ignorisati su SIGSTOP i SIGKILL.

  17. Slanje signala • Ctrl-C – SIGINT • Ctrl-Z – SIGSTOP • Ctrl-\ - SIGQUIT • kill (-l) • killall

  18. Komande za rad sa procesima • jobs (-rspl) • fg, bg, & • ps (-eUup axrtu) • top

More Related