2. Vysvětlete princip utility make a napište příklad jednoduchého makefile pro překlad a slinkování programu v C.
|
|
- Václav Němec
- před 7 lety
- Počet zobrazení:
Transkript
1 Otázky ke zkoušce z UNIXu ========================= A) Vývojové nástroje Popište činnost kompilátoru jazyka C a linkeru. 2. Vysvětlete princip utility make a napište příklad jednoduchého makefile pro překlad a slinkování programu v C. B) Jádro a C API UNIXu Vysv ětlete význam parametr ů funkce main() a proměnné environ. Jak se zpracovávají argumenty programu pomocí funkce getopt()? Parametry i environ jsou pole ukončená NULL. getenv( name ), putenv( name=vlaue ) getop(argc(index), argv, ab: )!=1?unknown+optopt :missing value optarg-value 2. Vysvětlete význam pojm ů proces, vlákno (thread), program. Čím se liší proces a vlákno? 3. Vysvětlete pojmy knihovní funkce a systémové volání. Popište konvenci, podle které systémová volání a knihovní funkce oznamují úspěšné ukončení nebo chybu. 4. Co obsahují soubory /etc/passwd a /etc/group? Kdy a jak používá Unix informace z těchto soubor ů. 5. Jak se používá identifikace vlastníka a skupiny pro testování přístupových práv? Jaký je rozdíl mezi reálným a efektivním vlastníkem procesu? Nejprve UID=0, uid=uid, gid=gid, gid \in sgid, else C) Systém souborů Jaké objekty jsou v UNIXu přístupné pomocí rozhraní systému soubor ů? Jaký je rozdíl mezi znakovými a blokovými zařízeními? Všechno: sockety, zařízení, pojmenované roury, procesy, pamět...
2 bloková zařízení čtou bufferov ě (pevná velik. bloku), znaková po bytech 2. Popište strukturu svazku typu s5 a jeho vylepšení (ufs). Svazek=filesystem bloky délky 512, 1024, 2048B disk: 1. boot blok(zavaděč OS) 2. superblok(info o svazku, počet blok ů pro i-nodes, počet blok ů, seznam volných blok ů, volných i-nodes, další info) 3. oblast i-nodes 4. oblast datových blok ů (může i i-nodes) i-node: typ souboru, přístupová práva, vlastník, skupina, čas přístup, modif, mofif i-nody, počet odkaz ů na soubor, velikost souboru, 10 odkaz ů na datové bloky a 3 odkazy na napřímé bloky (další i-nody) hardlink-odkaz na stejný i-node symlink-odkaz na skutečnou cestu vylepšení členění na skupiny cylindr ů, každá skupina obsahuje: kopii superbloku řídící blok skupiny tabulku i-nodes bitmapy volných i-nodes a datových bloků datové bloky bloky velik 4-8kB, fragmenty bloků jména dlouhá až 255znaků 3. Vysvětlete princip navigace ve struktuře adresá řů, tj. jak jádro najde podle cesty k souboru příslušné datové bloky. Vysvětlete rozdíl mezi pevnými (hardlink) a symbolickými (symlink) odkazy na soubory. Koukne na i-node, data adresá řů obsahují seznam i-nodes podadresá řů a soubor ů, tam hledá dál. Symlink má jako data cestu, kam míří 4. Jaká jsou přístupová práva k souborům? Co je to propůjčování práv (set UID)? Suid sgid sticky rwxrwxrwx 421 proto octal 6=rw sgid pro soubor bez práva spuštění pro skupinu = kontrola zámk ů při každém spuštění...mandatory lock
3 sgid pro adresá ř = nové skupiny budou mít stejnou gid jako adresář sticky bit pro adresáře =právo mazat a přejmenovávat soubory mají jen vlastníci soubor ů. 5. Jak procesy přistupují k otevřeným souborům? Jak se liší deskriptor a otevření souboru? Více deskript. může sdílet jedno otevření souboru (mod r/w, pozice) read, write, open, close, dup, dup2, pipe, socket,... open(path, flags,...napr pristup prava) flags pro new: O_WRONLY O_CREAT O_TRUNC mknod vytvoří soubor zařízení mkfifo pojmenovaná roura lseek(fd, offsett, odkud) // lze tím i zvětšit soubor odkud: SEEK_SET SEEK_CUR SEEK_END současná pozice: lseek(fd, 0, SEEK_CUR) změna velikosti: truncate, ftruncate //zmenšení řízení: fcntl(fd, command,...) // řízení soubor ů, zámky, deskriptory,... ioctl(fd, request,...) // univerzální řídící rozhraní pro periferní zařízení (každé zařízení definuje svou skupinu známých příkaz ů) (f)stat(fd/path, struct stat *buf) vrátí info o souboru (i-node, device, uid, gid, velikost, časy, počet odkaz ů,...) access(path, mode) // test přístupových práv dle euid egid chmod(path, mode) // nastavení práv link(path1,path2) // hardlink path2->path1 unlink(path) // slouží i k smazání souboru!!!!!!!!! rename(old, new) symlink(p1, p2) readlink(path, buff, buffsize) // do buff dá max buffsize znak ů z cesty na kterou ukazuje symlink path. Vrátí počet znak ů. Neukončuje '\0' mkdir(path, mode) rmdir(path) DIR *opendir(path) struct dirent *readdir(dir *dirp) // prochází sekvečn ě všechny
4 spoubory v adresáři int closedir(dir *dirp) struct dirent obsahuje i-node, nazev souboru (f)chdir(path/fd) // nastv nový pracovní adresá ř procesu getcwd(buff, size) // get pra adresář 6. Co je to virtual file system? K čemu slouží a jaký je princip jeho fungování? Umožnuje přístup k souborům nezávislý na konkrétním fs. Každému souboru je příd ělena struktura file. Ta ukazuje na vnode, ta obsahuje část nezávislou na fs a i-node skutečného fs. Každý fs definuje tabulku fcí pro jednotlivé operace, kterou používá vfs k vlasním operacím. U speciálních zařízení file odkazuje na snode (shadow-special-node), který definuje operace se zařízením a odkauje na vlastní vnode zařízení pro spec. operace. Spec zařízení je identifikováno major a minor číslem. Při otevření souboru se bud použije existující snode nebo se vytvoří nové, pokud neex. Struct vfs info o fs, nezávislé na vlastním typu fs rootvfs - / fs vfsop tabulka operací pro daný fs 7. Jaký je vztah diskového oddílu a svazku? Jak probíhá vytvoření, kontrola konzistence, připojení a odpojení svazku? Běžn ě svazek (fs)= diskový oddílu nebo svazek = logica disk volume...i vice disk. oddlíl ů na různých discích stripping = za sebou následující bloky dat se ukládají paraleln ě na dva různé disky...zrychlení mirroring = 2 kpie na dva disky...bezpečnost dat paritní disky = tři disky. Na dva se ukládají data, na třetí XOR RAID zahrnuje tyto akce kontrola konzistence = fsck vícenasobné odkazy na stejný blok odkazy někam pryč z datové oblasti fs špatný počet odkazů nesprávná velikostineplatný formýt i-nodes neplatný obsah superbloku... žurnálove fs nepotřebují
5 D) Procesy a roury Popište paměťový prostor procesu v uživatelském režimu a v režimu jádra. USERMODE Text kod programu //uložené v data inicializované prom. // programu(spustitelném souboru) Bss neinicializované prom. Pamět volná stack uživatelský zásobník, prom. funkcí, parametry fcí,... - každý proc má 2 zásobníky, jeden pro běh v USERMODE a druhý v KERNELMODE user_area není adresovatelná z programu. Info o proc používané jádrem, které nejsou potřeba, když je proc.odložen na disk. Jádro vidí vždy jen tu user_area běžícího procesu. Ostatní přístupné přes strukturu proc. KERNELMODE text jádra data a bss jádra struktura user běžícího procesu zásobník jádra samostatný pro každý proc. Je prázdný, jestliže je proc v USERMODE proc se dostane do jádra bud příchodem přerušení (procesor, časovač,...) Přerušení vyvolá i systémové volání. Tak se dostane do jádra. Vlastn ě to vypadá tak, že sys volání nastaví nějaké prom a pak vyvolá přerušení. V paměti je pouze jedna kopie kodu jádra. 2. Nakreslete a popište stavový diagram procesu
6 3. Popište základy mechanismu plánování proces ů. Jaké jsou prioritní třídy? Preemptivní (základ je pravidelné přerušení od časovače, sebere procesor procesu a předá jej jádru aktivuje plánovač proces ů) procesy řazeny do front podle priority, procesor je přidělen prvnímu procesu z fronty s max prioritou prioritní třídy: system: 60-99, rezervováno pro systémové procesy, pevná priorita realtime: , pevná priorita, pro každou prioritu defin.čas kvant. Time-shared: 0-59, proměnnádvousložková priorita. Pevná uživatelská a proměnná systémová. Pokud proc hodn ě vytěžuje procesor, je mu snižovaná priorita a zvětšováno časové kvantum pokud je proces s time-shared prioritou uspán a čeká na událost, je mu dočasn ě přid ělena priorita system, po příchodu události se dostane dříve na řadu 4. Popište mechanismus mapování soubor ů do paměti. Popište, jak lze za běhu programu získat přístup k proměnným a funkcím definovaným v nějaké dynamické sdílené knihovn ě. MAPovani mmap(addr, len, prot, flags, fd, offsett) do pam an adresu adr namapuje len Bytu z fd pocinaje offsett a vrati tu adresu, kam namapoval nebo MAP_FAILED. Prot jsou pristupova prava PROT_READ,... flags dalsi prava: MAP_PRIVATE, MAP_SHARED, MAP_FIXED mapuje se po celych strankach, offsett a při MAP_FIXED i addr musi byt správn ě zarovnány munmap(addr, len) // zruš mapování o délce len od addr msync(addr, len, flags) // zapíše změny v úseku len B od addr flags MS_ASYNC, MS_SYNC, MS_INVALIADTE(zruš namapovana data, která se liší od obsahu souboru) mprotect(addr, len, prot) // změní přístupová práva k části namapovaného souboru LIBS dlopen(file, mode) zpřístupní knihovnu v souboru file, vratí handle nebo NULL mode: RTLD_NOW, RTLD_LAZY, RTLD_GLOBAL(symboly budou glob.dosyupné), RTLD_LOCAL(nebudou)
7 dlsym(handle, name) // vratí adresu symbolu zadaného jména z knihovny dlclose(handle) dlerror() // vrátí textový popis chyby při práci s knihovnami užití: pluginy, konflikty jmen v knihovnách E) Signály Co jsou to signály? Jak může být pro proces vygenerován signál? Jaký je rozdíl mezi posláním signálu procesu a vláknu? Informují proces o vzniku určité události na uživatelské úrovni zpřístupnují mechanismy přerušení chybové události generované běžícím procesem asynchronní události vznik mimo proces nesou pouze informace o čísle signálu asynchronní zpracování kill(pid, sig) pid>0 proc s pid pid=0 všem procesům ve stej skupině pid=-1 všem mimo systémových pid < -1 procesům ve skupin ě -pid mohou být generovány pro proces (kill) nebo pro vlákno pthread_kill... chybové události nastavení obsluhovaných signál ů je stejné pro všechny vlákna, ale blokování má každé vlákno vlastní pthread_sigmask(how, const sigset_t *set, sigset_t *oset) how: SIG_BLOCK, SIG_UNBLOCK, SIG_SETMASK signál určený pro proces zpracuje práv ě jedno vlákno, které jej nemá zablokovaný lze vyhradit jedno vlákno pro synchronní příjem signál ů pomocí sigwait() a ostatním signály zablokovat pokud vlákno je ukončeno signálem(nap ř. SIGINT), končí celý proces. 2. Jaké jsou možnosti ošetření signál ů? Jak se nastavuje ošetření signál ů (handlery, blokování) pro proces a pro vlákna? Implicitní akce, ignorování, ošetření handlerem sigaction(sig, const str sigaction *act, *oact) nastaví obsluhu signálu sig podle act a původní vrátí v oact
8 struct sigaction *sa_handler = fce typu void f(int) sigset_t sa_mask = signály blokované v handleru, navíc je blokován sig sa_flags = SA_RESETHAND (po příchodu zruš ošetřování), SA_RESTART (restartuj přerušené sys.volání), SA_NODEFER (neblokuj sig během obsluhy) blokování sigprocmask(how, sigset_t *set, *oset) pthread_sigmask(---''---) //viz minulá otázka nastaví masku blokovaných sigs a vrátí původní pro manip s maskou: sigdelset(), sigemptyset(), sigfillset(), sigismember() sigpending(sigset*set) - vrátí čekající signály čekání na sig: pause() //čeká na lib signál, pak pokračuje sigsuspend(sigset_t *sigmask) // jako pause, ale po dobu čekání nahradí masku blokovaných sig maskou sigmask sigwait(sigset_t set, int*sig) // čeká signál z množiny set (tyto sig musí být předtím bloklé), číslo signálu vrátí v sig, nevolá handler F) Vlákna Co je to vlákno, jak se liší od procesu? Které atributy jsou společné pro proces, které jsou privátní pro každé vlákno? Jak je možné vytvořit globální proměnnou privátní pro jedno vlákno? Vlákno je implementováno bud v knihovnách nebo v jádře. Library-thread model, kernel-thread model, hybridní modely soukromé atributy vláken: instruction pointer stack pevná velikost, dynamicky se nezvětšuje! thread ID, dostupné funkcí pthread_self() plánovací priorita a politika errno klíčované hodnoty dvojice (pthread_key klic, void *ptr) klíč vytvořený voláním pthread_key_create() je viditelný ve všech vláknech procesu každé vlákno mu může dát jinou hodnotu pomocí pthread_setspecific()
9 2. Popište postup při vytvoření a zrušení vlákna. Jak fungují destruktory klíčovaných hodnot a zásobník úklidových handler ů? pthread_create(pthread_t *thread, *attr, *start_fce, *arg) start_fce typu void f(*void) do thread dá ID vlákna attr=null, default, jinak bere parametry (stacksize,...) spustí funkci s param arg s attr se manipuluje pomocí: pthread_attr_*, kde * je: init() destroy() getstackaddr() setstackaddr() pthread_once(pthread_once_t *oncectrl, init_fce) v param oncectrl se předá odkaz na staticky inicializovanou prom = PTHREAD_ONCE_INIT init_fce je typu void f(void) první vlákno provede funkci init_fce, ostatní ji už nedělají a pokud ješt ě neskončila, jsou pozastavena ostatní vlákna nap ř na glob. dynamickou inicializaci dat pthread_exit(void *value ptr) // jako exit procesu pthread_join(thread, **value_ptr) // čeká na ukončení threadu thread a získá jeho návratovou hodnotu pthread_detach(thread) // okamžit ě uvolní pamět po skončení vlákna, nelze s thread_join pthread_cancel(thread) // žádost o zrušení vlákna závisí na nastavení pthread_setcancelstate(int state, *old) PTHREAD_CANCEL_ENABLE/DISABLE pthread_setcanceltype(int type, *old) jestli okamžit ě nabo na určitých místech pthread_testcancel() Klíče pthread_key_create(*key, destruktor) key je tvořený klíč destruktor je fce typu void f(void *) destruktor je volán při rušení vlákna pro každý klič, jehož value není NULL, podle SUSv3 je před vstupem do destruktoru nastavena každá hodnota na null pthread_key_delete(key) // ruší klíč, nemění asociovaná data pthread_setspecific(key, *data) void *pthread_getspecific(key)
10 úklidové handlery volají se před destruktory organizovány v zásobníku handler ů (LIFO) pthread_cleanup_push(fce, void *arg) fce je tvaru void f(void *) pthread_cleanup_pop(int execute) vyjme naposled vložený a spustí ho, pokud execute!= 0 3. Uveďte nástroje pro synchronizaci vláken. Nevrací chyby při čekání na lock, pokud přijde signal!!! Mutex něco jako semafor pthread_mutex_init(*mutex, *attr) attr NULL default, jinak fce pthread_mutexattr...() pthread_mutex_destroy(*mutex) pthread_mutex_lock(*mutex) // uspává dokud nejde pthread_mutex_trylock(*mutex) // nuspí, vrátí chybu pthread_mutex_unlockl(*mutex) defaultn ě pouze pro jeden proces, při tvoření mutexu se pomocí attr dá nastavit, že k němu mužou i ostatní pomocí shared mem podmínkové proměné pthread_cond_init(*cond, *attr) inicializace pthread_cond_destroy(*cond) pthread_cond_wait(*cond, *mutex) čeká na podmínkové prom dokud jiné vlákno nezavolá pthread_cond_signal(*cond) nebo pthread_cond_broadcast(*cond) automaticky odemkne mutex a až když je probuzeno, tak mutex znovu zamkne a pak se až vrátí pthread_cond_timedwait(*cond, *mutex, *absolut_time) jako minulá, ale skončí v čase abs_time i bez signalizace podmínky když signalizuji, že se něco změnilo, musím to po wait ješt ě znovu otestovat...nap ř mohlo to už změnit jiné vlákno,... MUSIM znovu testovat Read-write zámky pthread_rwlock_init(*lock, *attr) pthread_rwlock_destroy(*lock) thread_rwlock_rdlock(*lock) // uspí thread_rwlock_tryrdlock(*lock) // chyba
11 totéž pro wrlock pthread_rwlock_unlock(*lock) G) Synchronizace a zamykání Vysvětlete vznik konfliktu při přístupu ke sdíleným datům a jeho řešení pomocí zamykání. Jak může vzniknout deadlock? Popište zamykání soubor ů pomocí fcntl(). Zamykání pro přístup k souboru fcntl(fd, int cmd,...) cmd: F_GETLK vezme popis zámku z třetího arg a nahradí ho popisem existujícího zámku, který s ním koliduje F_SETLK(W) nastvení zámku podle třetího argumentu, při neúspěch ihned skončí W čeká třetí arg je typu struct flock: l_type: F_RDLOCK, F_WRLOCK, F_UNLOCK l_whence: jako u lseek, odkud je start počítán: SEEK_SET, SEEK_CUR, SEEK_END start, len pid procesu, který má zámek...jen u F_GETLK při skončení procesu se automaticky uvalní všechny jeho zámky Dva typy zámk ů: advisory locks procesy musí samy kontrolovat zámky před použitím read-write více používané mandatory locks je-li zamčeno, bude read/write pozdrženo, dokud se neodemkne nap ř na NFS (démon lockd) není podporováno nepoužívat 2. Vysvětlete zamykání pomocí lock soubor ů. Popište postup zamykání pro soubory sdílené pomocí NFS. Vytvoření souboru + test existence je atomická operace open( lockfile, O_RDWR O_CREAT O?EXCL, 0600) čekání ve smyčce (aktivní), problém s tím, když proces umře, vhodné do souboru zapsat PID, pak mohou ověřit, tím vznikne možnost vícenásobného zámku (test PID + smazání nejsou at.op.). Lze řešit samostatným procesem, který to kontroluje a jen maže
12 NFS problem nevrací korektn ě hned, ale až někdy vytvoříme jiný soubor (unikátní jméno pro každý proces!) a zkusíme na něj hardlinkovat lockfile (ve smyčce, dokud se nepovede) link(filename, lockfile) pak testneme statem, protože ani to nemusí vrátit korektní návratovou hodnotu stat(filename, &buff) A pokud je počet hardlink ů 2, pak máme přístup if(buf.st_nlink == 2) skonči smyčku a ješte zrušíme link unlink(filename) H) IPC Popište semafory, implementované v UNIX System V IPC. int semget(key, count, flags) vrati ident pole semafor ů ke klíči key key: cokoli nebo IPC_PRIVATE flags: IPC_CREAT, IPC_EXCL vraci id semctl(id, semnum, cmd,...) řídící fce, čtvrtý volit param je arg je typu union semun semnum je číslo semaforu v poli cmd: GETVAL, SETVAL, GETPID, GETNCNT(počet procesů čekajících na vyšší hodnotu), GETZCNT(čekajících na nulu), IPC_RMID zruší pole semafor ů!!! inicializace semaforu: semctl(id,num, SETVAL, arg) kde v arg je init_value semop(id, struct sembuf *sops, nsops) atomická operace sops pole operací o velikosti nsops sops: sem_num na jaký semafor v poli sem_op jaká změna -1 vstup do krit sekce (obecn ě -N) 1 vystup (N) 0 čekej na 0 sem_flg: IPC_NOWAIT, SEM_UNDO (při skončení procesu odemkni)
13 2. Popište sdílenou pam ěť, implementovanou v UNIX System V IPC. Fce začínají shm.. get(key, size, flags) shmat(id, *addr, flags) připojí na adresu addr (neboněkam, pokud NULL), vrací adresu flags: SHM_READONLY, SHM_RND(zaokrouhli adresu připojení) shmdt(*addr) odpoj shmctl(id, cmd, struct shmid_ds *buf) cmd: IPC_SET nastavení přístup. Práv IPC_STAT v buf vrátí informace IPS_RMID zrušení sdílené paměti odpojení neruší!!! 3. Popište fronty zpráv, implementované v UNIX System V IPC. Fce začínají msg... get(key, flags) flags: IPC_CREAT, IPC_EXCL spolu s přístup právy ctl(id, cmd, buf) jako vždy :)) msgsnd(id, *msgp, size, flags) pošle zprávu msgp o velikosti size do fronty id msgp lib typu, ale na začátku musí být kladný long identifikator typu. Size je uváděna bez tohoto identif typu!!! flags: IPCNOWAIT pokud je plna fronta, skonci s chybou msgrcv(id, *msgp, size, typ, flags) vrací velikost zprávy typ se nepočítá do velikosti vybere se z fronty první zpráva dle typu. == 0 libovolná > 0 přesn ě typu typ < 0 typ zprávy <= -typ I) Sítě Popište činnost serveru a klienta (posloupnost systémových volání) pro spojované síťové služby. Server: socket(domain(af_inet), type(sock_stream), protocol) bind(socket, address, sizeaddr)
14 listen(socket, int kolik muze cekat) accept(socket, address, addrlen) client: socket connect(socket, address, addrlen) send, recv, read, write,... - ješte jsou poll a select (testuje filedescriptory) 2. Popište činnost serveru a klienta (posloupnost systémových volání) pro nespojované síťové služby. Jako tcp, ale nema connect (jen pro omezeni adresy protistrany) a používá sendto a recvfrom sendto(socket, *msg, size, flags, addr, addrlen) recvfrom( ) close zavře socket. Nemusí být okamžit ě, jaádro se ješt ě napozadí snaží přenést zbylá data... shutdown(socket, int how) zavře socket, neruší deskriptor how: SHUT_RD zavře pro čtení SHUT_WR pro zápis SHUT_RDWR pro oboje...jaký to má smysl??? 3. Co je to soket? Jaké jsou varianty adresace soket ů (v rámci jednoho stroje a po síti)? Jaké funkce (uveďte aspo ň některé) slouží pro převod mezi číselnými a symbolickými jmény protokol ů, port ů a IP adres? Proč se používají funkce pro konverzi mezi lokálním a síťovým pořadím bajt ů? Obousměrná pipe sockety z AF_UNIX jejich názvy jsou názvy speciálních soubor ů, které je reprezentují v sys soubor ů. Tedy lokal sockety jsou take soubory p evody: ř struct protoent* getprotobyname(name) struct servent* getservbyname(name, proto_name) struct hostent* gethostbyname(name) struct hostent* gethostbyaddr(addr, len, type)
15 4. Popište varianty sekvenční a paralelní obsluhy klient ů TCP serveru. 5. Jak lze čekat na příchod dat z několika deskriptor ů souborů zárove ň? Jak byste tuto funkci použili při implementaci síťového serveru, který obsluhuje několik klient ů zárove ň jedním procesem bez použití vláken? Select, poll J) Administrace Jak probíhá start operačního systému UNIX? Co jsou to úrovně běhu systému? Jak se spouští startovací skripty? Načte a zavede se kernel mount / nový proces init a ten dělá zbytek v uživatelském režimu init spouští dle inittab id:úrovn ě:akce:proces akce je nap ř. Wait (počkej na dokončení), respawn, Jak probíhá přihlášení uživatele do systému? Init - fork + exec getty (načte login) exec login (suid user) exec shell 4. Jak se používá démon cron? Pravidelné spouštění akcí vypis crontab -1 zadani ze souboru crontab < file formát crontab: minuta hodina den měsíc den_v_týdnu (asi ješt ě suid?) command 5. Jak funguje síťový server inetd? Čeká na portech definovaných v inetd.conf a spouští servery formát inetd.conf: služba(dle services) socket(dgram, stream) proto čekání uid command + args
16 čekání: u stream wait: server si sám volá accept, jen jeden klient nowait: inetd volá accept a předá descriptor, server vlastn ě ani neví, že jede po síti 6. Jaké úkoly má správce Unixu?
Systém souborů (file system, FS)
UNIX systém souborů (file system) 1 Systém souborů (file system, FS)! slouží k uchování dat na vnějším paměťovém médiu a zajišťuje přístup ke struktuře dat! pro uživatele možnost ukládat data a opět je
VíceLinux Teorie operačních systémů a realita
ÚVOD DO OPERAČNÍCH SYSTÉMŮ Linux Teorie operačních systémů a realita České vysoké učení technické Fakulta elektrotechnická Ver.1.00 2010 Historie Unixu a Linuxu MULTICS 50. - 60. léta minulého století,
VícePár odpovědí jsem nenašla nikde, a tak jsem je logicky odvodila, a nebo jsem ponechala odpověď z pefky, proto je možné, že někde bude chyba.
Odpovědi jsem hledala v prezentacích a na http://www.nuc.elf.stuba.sk/lit/ldp/index.htm Pár odpovědí jsem nenašla nikde, a tak jsem je logicky odvodila, a nebo jsem ponechala odpověď z pefky, proto je
VícePřednáška 2. Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. Úvod do Operačních Systémů Přednáška 2
Přednáška 2 Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. 1 Systém souborů (FS) I 2 Systém souborů II Logický systém souborů pro běžného uživatele se jeví jako jediná homogenní struktura
VíceVýpočet v módu jádro. - přerušení (od zařízení asynchronně) - výjimky - softvérové přerušení. v důsledku událostí
Výpočet v módu jádro v důsledku událostí - přerušení (od zařízení asynchronně) - výjimky - softvérové přerušení řízení se předá na proceduru pro ošetření odpovídající události část stavu přerušeného procesu
VícePráce s pamětí. Tématicky zaměřený vývoj aplikací v jazyce C skupina Systémové programování Linux. Martin Husák, Petr Velan, Martin Drašar
Práce s pamětí Tématicky zaměřený vývoj aplikací v jazyce C skupina Systémové programování Linux Martin Husák, Petr Velan, Martin Drašar Fakulta informatiky Masarykova univerzita {husakm velan drasar}@ics.muni.cz
VíceProcesy a vlákna - synchronizace
ÚVOD DO OPERAČNÍCH SYSTÉMŮ Ver.1.00 Procesy a vlákna - synchronizace České vysoké učení technické Fakulta elektrotechnická 2010 Studijní materiály a informace o předmětu http://measure.feld.cvut.cz/vyuka/predmety/bakalarske/navody
VíceSystém adresace paměti
Systém adresace paměti Základní pojmy Adresa fyzická - adresa, která je přenesena na adresní sběrnici a fyzicky adresuje hlavní paměť logická - adresa, kterou má k dispozici proces k adresaci přiděleného
VícePřednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012
Přednáška Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského
VícePřednáška 5. Identita uživatelů, procesů a souborů. Přístupová práva a jejich nastavení. Úvod do Operačních Systémů Přednáška 5
Přednáška 5 Identita uživatelů, procesů a souborů. Přístupová práva a jejich nastavení. 1 Uživatel Při přihlášení do systému musí uživatel: identifikovat systém, na který se chce přihlásit fyzické umístění
VíceMeziprocesová komunikace
Meziprocesová komunikace mnohé aplikace sestávají z mnoha navzájem spolupracujících procesů, které mezi sebou komunikují a sdílejí informace jádro musí poskytovat mechanizmy, které toto umožní nazýváme
VíceProcesy a vlákna Mgr. Josef Horálek
Procesy a vlákna Mgr. Josef Horálek Procesy a vlákna = Základním úkolem jádra je = Správa běžících procesů a vláken: = vytváření = plánování = nastavování = ukončování Proces, vlákno, úloha = Proces běžící
VíceRoury a zprávy Mgr. Josef Horálek
Roury a zprávy Mgr. Josef Horálek Roury a zprávy = Jde o metodu místní komunikace mezi procesy. = Jedná se o: = Anonymní roury = Pojmenované roury = Komunikace pomocí zpráv Anonymní roury (pipe) = Nejjednodušší
VíceSouborové systémy Mgr. Josef Horálek
Souborové systémy Mgr. Josef Horálek Souborové systémy = Prostředky pro práci se souborovými systémy patří mezi nejsilnější stránky linuxového jádra. = Využívají unixový přístup k souborové hierarchii
VíceZOS OPAKOVÁNÍ. L. Pešička
ZOS OPAKOVÁNÍ L. Pešička ZÁKLADNÍ PRAVIDLO Důležité je znát nejen fakta, ale porozumět jim a zasadit je do kontextu celého OS Př. algoritmus Second Chance využívá bitu Referenced tak, že (fakta) a kdy
VíceIdentita uživatelů, přístupová práva. Linux
Identita uživatelů, přístupová práva Linux Uživatel Při přihlášení do systému musí uživatel: identifikovat systém, na který se chce přihlásit fyzické umístění (lokální přihlášení) jméno systému/ IP adresa
VíceManagement procesu I Mgr. Josef Horálek
Management procesu I Mgr. Josef Horálek Procesy = Starší počítače umožňovaly spouštět pouze jeden program. Tento program plně využíval OS i všechny systémové zdroje. Současné počítače umožňují běh více
VíceOperační systémy. Cvičení 5: Volání jádra, procesy, vlákna.
Operační systémy Cvičení 5: Volání jádra, procesy, vlákna. 1 Obsah cvičení Systémová volání Knihovní funkce jazyka C Procesy informace o procesech vytváření, ukončování procesů, signály POSIX vlákna vytváření,
VíceC++ a vnitřní svět. David Bednárek Jakub Yaghob Filip Zavoral
C++ a vnitřní svět David Bednárek Jakub Yaghob Filip Zavoral Vazby na OS Co není řešeno ISO normou Pokročilá práce se soubory Paměťově mapované soubory, asynchronní soubory Práce s adresáři Práce s procesy
VíceUŽIVATEL, SKUPINA, PROCES
UŽIVATEL, SKUPINA, PROCES Systém bez uživatele je jedině Matrix? Uživatelé se seskupují a řídí práci. Group = skupina uživatelů Trocha teorie: LINUX je systémem víceuživatelským. Tzn. Že k dané instanci
VícePrincipy počítačů a operačních systémů
Principy počítačů a operačních systémů Operační systémy Souborové systémy Zimní semestr 2011/2012 Poděkování Při přípravě této prezentace jsem většinu materiálu převzal z prezentace Yaghob, J. Základy
VíceObsah. Kapitola 1 Hardware, procesory a vlákna Prohlídka útrob počítače...20 Motivace pro vícejádrové procesory...21
Stručný obsah 1. Hardware, procesory a vlákna... 19 2. Programování s ohledemna výkon... 45 3. Identifikování příležitostí pro paralelizmus... 93 4. Synchronizace a sdílení dat... 123 5. Vlákna v rozhraní
VíceOperační systémy Tomáš Hudec. 6 Komunikace procesů (IPC) Obsah: 6.1 Klasické problémy souběhu. 6.1.1 Obědvající filosofové
Operační systémy Tomáš Hudec 6 Komunikace procesů (IPC) Obsah: 6.1 Klasické problémy souběhu, 6.1.1 Obědvající filosofové, 6.1.2 Producenti a konzumenti, 6.1.3 Problém spících holičů, 6.1.4 Problém pisatelů
VíceProcesy a vlákna (Processes and Threads)
ÚVOD DO OPERAČNÍCH SYSTÉMŮ Ver.1.00 Procesy a vlákna (Processes and Threads) Správa procesů a vláken České vysoké učení technické Fakulta elektrotechnická 2012 Použitá literatura [1] Stallings, W.: Operating
VíceMS WINDOWS II. Jádro. Správa objektů. Správa procesů. Zabezpečení. Správa paměti
MS WINDOWS II Jádro Správa objektů Správa procesů Zabezpečení Správa paměti JÁDRO I ntoskrnl.exe napsán v C (příp. assembler) základní mechanismy poskytované executivám trap dispečink synchronizace přístupů
VícePřednáška. Systémy souborů. FAT, NTFS, UFS, ZFS. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012
Přednáška Systémy souborů. FAT, NTFS, UFS, ZFS. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Příprava studijního programu Informatika je podporována projektem
VíceAdministrace OS Unix. Úvodní informace Principy administrace Uživatelé
Administrace OS Unix Úvodní informace Principy administrace Uživatelé Ing. Zdeněk Muzikář, CSc., Ing. Jan Žďárek, Ph.D. Příprava studijního programu Informatika je podporována projektem financovaným z
VíceSouborové operace Mgr. Josef Horálek
Souborové operace Mgr. Josef Horálek Souborové operace = V unixových systémech a Linuxu platí, že skoro vše je SOUBOR častý výskyt deskriptorů souborů a souborových operací. = Souborové operace umožňují
VícePráce se soubory. Úvod do programování 2 Tomáš Kühr
Práce se soubory Úvod do programování 2 Tomáš Kühr Soubory z pohledu C u Soubor chápeme jako posloupnost bytů uložených na disku u Datový proud (anglicky stream) u Ještě obecnější přístup u Sjednocuje
VíceUkázka zkouškové písemka OSY
Ukázka zkouškové písemka OSY Jméno a příjmení:.......................................... Odpovězte na otázky zaškrtnutím příslušného políčka. Otázky označené znakem mohou mít více než jednu správnou odpověď.
VíceSlužba ve Windows. Služba (service) je program
Služby Windows Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu www.rvp.cz, ISSN: 1802-4785. Provozuje Národní ústav pro vzdělávání, školské
VícePřednáška 6. Procesy a vlákna (vznik, stavy, atributy). Signály. Nástroje pro práci s procesy a vlákny. Úvod do Operačních Systémů Přednáška 6
Přednáška 6 Procesy a vlákna (vznik, stavy, atributy). Signály. Nástroje pro práci s procesy a vlákny. 1 Procesy I Proces je spuštěný program. Každý proces má v rámci systému přiřazeno jednoznačné číslo
VíceOperační systémy 1. Přednáška číslo 11 3. 5. 2010. Souborové systémy
Operační systémy 1 Přednáška číslo 11 3. 5. 2010 Souborové systémy Dělení dle bezpečnosti Souborové systémy s okamžitým zápisem pouze jeden druh operace a další musí čekat. Data se nemohou ztratit, ale
VíceSystém souborů (File System)
(File System) Základní pojmy Běžný uživatel vidí logický systém souborů jako jeden strom. Kořen stromu je kořenový adresář ( / = Root Directory ). Uzly stromu jsou adresáře (d = Directory). Listy stromu
VíceČÁST 1. Základy 32bitového programování ve Windows
Obsah Úvod 13 ČÁST 1 Základy 32bitového programování ve Windows Kapitola 1 Nástroje pro programování ve Windows 19 První program v Assembleru a jeho kompilace 19 Objektové soubory 23 Direktiva INVOKE 25
VíceKonstruktory a destruktory
Konstruktory a destruktory Nedostatek atributy po vytvoření objektu nejsou automaticky inicializovány hodnota atributů je náhodná vytvoření metody pro inicializaci, kterou musí programátor explicitně zavolat,
VícePráce s binárními soubory. Základy programování 2 Tomáš Kühr
Práce s binárními soubory Základy programování 2 Tomáš Kühr Binární soubory Mohou mít libovolnou strukturu Data jsou uložena ve stejné podobě jako v paměti za běhu programu Výhody: Pro uložení je potřeba
VícePřidělování zdrojů (prostředků)
Přidělování zdrojů (prostředků) Proces potřebuje zdroje (prostředky) hardware (I/O zařízení, paměť) software (data, programy) Klasifikace zdrojů (z hlediska multitaskingového režimu) Násobně použitelné
VíceLINUX SOUBORY. Zadejme příkaz ls l! V této lekci se odrazíme od dlouhého výpisu příkazu ls a uvidíme, kam nás to zanese. SPŠ Teplice - 3.
LINUX SOUBORY Zadejme příkaz ls l! V této lekci se odrazíme od dlouhého výpisu příkazu ls a uvidíme, kam nás to zanese. Dlouhý výpis příkazu ls Zadejte příkaz ls s parametrem l. Před každou položkou (souborem
VíceOperační systémy. Tomáš Vojnar IOS 2009/2010. Vysoké učení technické v Brně Fakulta informačních technologií Božetěchova 2, 612 66 Brno
Operační systémy IOS 2009/2010 Tomáš Vojnar Vysoké učení technické v Brně Fakulta informačních technologií Božetěchova 2, 612 66 Brno ÚÓ Ò Ö ØºÚÙØ ÖºÞ Úvod do UNIXu p.1/11 Unix úvod Úvod do UNIXu p.2/11
VíceStruktura programu v době běhu
Struktura programu v době běhu Miroslav Beneš Dušan Kolář Struktura programu v době běhu Vztah mezi zdrojovým programem a činností přeloženého programu reprezentace dat správa paměti aktivace podprogramů
VíceLineární datové struktury
Lineární datové struktury doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 13. března 2017 Jiří Dvorský (VŠB TUO) Lineární datové
VícePB071 Programování v jazyce C
Programování v jazyce C POSIX Organizační Zápočtový příklad nanečisto v tomto týdnu na cvičeních, 60 minut (naostro proběhne 5-11.5., čtvrtkové odpadnuté cvičení 15.5.) Pro účast na zkoušce je nutné mít
VíceArchitektura rodiny operačních systémů Windows NT Mgr. Josef Horálek
Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek = Velmi malé jádro = implementuje jen vybrané základní mechanismy: = virtuální paměť; = plánování vláken; = obsluha výjimek; = zasílání
Více8 Třídy, objekty, metody, předávání argumentů metod
8 Třídy, objekty, metody, předávání argumentů metod Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost třídám a objektům, instančním
VíceCvičení č. 3. Sdílené prostředky a synchronizace Program Banka. 4 body
Cvičení č. 3 Sdílené prostředky a synchronizace Program Banka 4 body Datum: 12.3.2008 1 Obsah 1. Úvod...2 2. Pokyny pro odevzdání...2 3. Příprava...2 4. Úlohy...3 4.1. Požadavky na program...3 4.2. Požadavky
VíceŘada programovacích jazyků nabízí prostředky pro řešení meziprocesové komunikace jako je synchronizace a řízení přístupu do kritické sekce.
Operační systémy Tomáš Hudec 7 Prostředky programovacích jazyků pro IPC Obsah: 7.1 Monitor, 7.1.1 Použití monitoru pro řízení přístupu do kritické sekce, 7.1.2 Použití monitoru pro synchronizaci, 7.1.3
VíceZměnit čas poslední modifikace souboru je možno službou jádra getrusage() stat() link() time() *truncate()
Otázky nesjou zdaleka všechny, jsou vytažené ze zveřejněných ukázkových otázek!!! Mějme program: static int pole[100]; main() { int pole1[200]; } Tento program bude mít po zkompilování sekci DATA velkou
Vícepřetížení operátorů (o)
přetížení operátorů (o) - pro vlastní typy je možné přetížit i operátory (tj. definovat vlastní) - pro definici slouží klíčové slovo operator následované typem/znakem operátoru - deklarace pomocí funkčního
VíceWebový server lapache
Webový server lapache Abstrakt lapache (lukas light apache) je jednoduchý UNIXový webový server podporující: podmnožinu HTTP 1.0/1 protokolu virtuální servery (s vlastními chybovými stránkami a kořenem
VíceWindows a real-time. Windows Embedded
Windows a real-time Windows Embedded Windows pro Embedded zařízení Současnost (2008): Windows Embedded WINDOWS EMBEDDED Windows Embedded CE Windows XP Embedded Windows Embedded for Point of Service Minulé
Víceudev a kamarádi... Středisko UN*Xových technologií
udev a kamarádi... Středisko UN*Xových technologií udev a kamarádi úvod Zařízení v Linuxu typicky adresář /dev tři typy zařízení znakové blokové síťové nejsou přítomny tvoří vazbu mezi userspace (programy)
VíceSystémová volání Mgr. Josef Horálek
Systémová volání Mgr. Josef Horálek Systémová volání = Systémová volání = volání jádra = základní komunikace aplikačních programů s jádrem = Tvůrce programu obvykle oddělen vrstvou standardní knihovny
VíceUniverzita Pardubice Fakulta elektrotechniky a informatiky ISOSY. 2010 Matěj Trakal
Univerzita Pardubice Fakulta elektrotechniky a informatiky ISOSY 2010 Matěj Trakal Obsah 1 4. přednáška 2 1.1 Práva................................. 2 1.1.1 Obecné informace....................... 2 1.1.2
VíceAdministrace OS Unix. filesystém UFS mount snapshot RAID
Administrace OS Unix filesystém UFS mount snapshot RAID Ing. Zdeněk Muzikář, CSc., Ing. Jan Žďárek, Ph.D. Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního
VíceMetody připojování periferií BI-MPP Přednáška 2
Metody připojování periferií BI-MPP Přednáška 2 Ing. Miroslav Skrbek, Ph.D. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze Miroslav Skrbek 2010,2011
Více- program = vykonatelný soubor - proces = jedna instance vykonávaného programu
Proces - program = vykonatelný soubor - proces = jedna instance vykonávaného programu UNIX - souběžně (simultaneously) se může vykonávat mnoho procesů (šachový velmistr) - může se vykonávat mnoho instancí
VíceOperační systémy. Jednoduché stránkování. Virtuální paměť. Příklad: jednoduché stránkování. Virtuální paměť se stránkování. Memory Management Unit
Jednoduché stránkování Operační systémy Přednáška 8: Správa paměti II Hlavní paměť rozdělená na malé úseky stejné velikosti (např. 4kB) nazývané rámce (frames). Program rozdělen na malé úseky stejné velikosti
VíceVíce o konstruktorech a destruktorech
Více o konstruktorech a destruktorech Více o konstruktorech a o přiřazení... inicializovat objekt lze i pomocí jiného objektu lze provést přiřazení mezi objekty v původním C nebylo možné provést přiřazení
VíceOS Procesy a vlákna. Tomáš Hudec. Tomas.Hudec@upce.cz. http://asuei01.upceucebny.cz/usr/hudec/vyuka/os/
OS Procesy a vlákna Tomáš Hudec Tomas.Hudec@upce.cz http://asuei01.upceucebny.cz/usr/hudec/vyuka/os/ Osnova procesy příkazy pro procesy procesy systémová volání signály signály systémová volání vlákna
VícePočítačové sítě Systém pro přenos souborů protokol FTP
Počítačové sítě Systém pro přenos souborů protokol FTP Autorizovaný přístup do souborového systému hostitelského uzlu Informace o obsahu souborového systému hostitelského uzlu Obousměrný přenos kopií souborů
VíceČinnost počítače po zapnutí
Projekt: Inovace oboru Mechatronik pro Zlínský kraj Registrační číslo: CZ.1.07/1.1.08/03.0009 Činnost počítače po zapnutí Paměť RWM(Read Write Memory - paměť pro čtení a zápis, označovaná také jako RAM)
VícePrincipy operačních systémů. Lekce 7: Souborový systém
Principy operačních systémů Lekce 7: Souborový systém Souborový systém Souborový systém (anglicky file system) je označení pro způsob organizace dat ve formě souborů (a většinou i adresářů) tak, aby k
VíceVícevláknové programování na CPU: POSIX vlákna a OpenMP I. Šimeček
Vícevláknové programování na CPU: POSIX vlákna a OpenMP I. Šimeček xsimecek@fit.cvut.cz Katedra počítačových systémů FIT České vysoké učení technické v Praze Ivan Šimeček, 2011 MI-PRC, LS2010/11, Predn.2
VíceParalelní programování
Paralelní programování přednášky Jan Outrata únor duben 2011 Jan Outrata (KI UP) Paralelní programování únor duben 2011 1 / 16 Semafory Await synchronizace používající await běží na železe = využívají
VíceOperační systémy. Přednáška 4: Komunikace mezi procesy
Operační systémy Přednáška 4: Komunikace mezi procesy 1 Časově závislé chyby Dva nebo několik procesů používá (čte/zapisuje) společné sdílené prostředky (např. sdílená paměť, sdílení proměnné, sdílené
VícePráce se soubory. Úvod do programování 2 Tomáš Kühr
Práce se soubory Úvod do programování 2 Tomáš Kühr Soubory z pohledu C Soubor zjednodušeně chápeme jako posloupnost bytů uložených někde na disku Datový proud (anglicky stream) Ještě obecnější přístup
VíceIdentita uživatele (procesu)
(procesu) Vnější identita, identita uživatele Je tvořena přihlašovacím jménem a heslem Slouží k: přihlášení do systému pojmenování domovského adresáře jako jméno pro mail... Vnitřní identita, identita
Více14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.
Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání
VíceZákladní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.
Základní principy konstrukce systémové sběrnice - shrnutí Shrnout základní principy konstrukce a fungování systémových sběrnic. 1 Co je to systémová sběrnice? Systémová sběrnice je prostředek sloužící
VíceIUJCE Přednáška č. 11. další prvky globální proměnné, řízení viditelnosti proměnných, funkcí
Velké projekty v C velký = 100ky a více řádek udržovatelnost, bezpečnost, přehlednost kódu rozdělení programu do více souborů další prvky globální proměnné, řízení viditelnosti proměnných, funkcí Globální
Vícefor (i = 0, j = 5; i < 10; i++) { // tělo cyklu }
5. Operátor čárka, - slouží k jistému určení pořadí vykonání dvou příkazů - oddělím-li čárkou dva příkazy, je jisté, že ten první bude vykonán dříve než příkaz druhý. Např.: i = 5; j = 8; - po překladu
VíceÚvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií
1 Fakulta elektrotechniky a informatiky Katedra softwarových technologií 12. října 2009 Organizace výuky Přednášky Teoretické základy dle normy jazyka C Cvičení Praktické úlohy odpřednášené látky Prostřední
VícePlatforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13
Obsah Úvod 11 Platforma.NET 11.NET Framework 11 Visual Basic.NET 12 1 Základní principy a syntaxe 13 Typový systém 13 Hodnotové typy 13 Struktury 15 Výčtové typy 15 Referenční typy 15 Konstanty 16 Deklarace
Víceint ii char [16] double dd název adresa / proměnná N = nevyužito xxx xxx xxx N xxx xxx N xxx N
Struktura (union) - struktura a union jsou složené typy, které "v sobě" mohou obsahovat více proměnných - struktura obsahuje v každém okamžiku všechny své proměnné, union obsahuje (=je "aktivní") pouze
VíceSpuštění instalace. nastavení boot z cd v BIOSu vložení CD s instal. médiem spuštění PC. nastavení parametrů instalace (F2 čěština)
Instalace OS Linux Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu www.rvp.cz, ISSN: 1802-4785. Provozuje Národní ústav pro vzdělávání,
VíceVlákna a přístup ke sdílené paměti. B4B36PDV Paralelní a distribuované výpočty
Vlákna a přístup ke sdílené paměti B4B36PDV Paralelní a distribuované výpočty Minulé cvičení: Paralelizace nám může pomoct... 1 Minulé cvičení: Paralelizace nám může pomoct... B4B36PDV: Ale ne všechny
VíceSpráva procesoru. Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. 11. březen, 2011
Operační systémy Správa procesoru Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci 11. březen, 2011 Petr Krajča (UP) KMI/XOSY: Přednáška III. 11. březen, 2011 1 / 18 Procesy (1/2) neformálně:
VíceKomunikační sokety. teorie a implementace v C#, C++ a Javě. Aleš Keprt Katedra informatiky UP duben 2006, revize květen 2007
Komunikační sokety teorie a implementace v C#, C++ a Javě Aleš Keprt Katedra informatiky UP duben 2006, revize květen 2007 Hrajeme proti sobě ale jak na to? Komunikace mezi procesy na jednom počítači Roury
VíceOd CGI k FastCGI. Uvedené dílo podléhá licenci Creative Commons Uved te autora 3.0 Česko.
Od CGI k FastCGI Ondřej Caletka 5. října 2013 Uvedené dílo podléhá licenci Creative Commons Uved te autora 3.0 Česko. Ondřej Caletka (CESNET, z.s.p.o.) Od CGI k FastCGI 5. října 2013 1 / 18 Obsah 1 Common
VíceAdministrace Oracle. Práva a role, audit
Administrace Oracle Práva a role, audit Filip Řepka 2010 Práva (privileges) Objekty (tabulky, pohledy, procedury,...) jsou v databázi logicky rozděleny do schémat. Každý uživatel má přiděleno svoje schéma
Více2010/2011 ZS P i r i nc č py po ít č čů a SOUBOROVÝ SUBSYSTÉM
Pi Principy i počítačů čů SOUBOROVÝ SUBSYSTÉM požadavky perzistentní uchovávání dat zvětšení pracovního objemu při zpracování dat dostupnost různými procesy Soubor abstrakce, která umožňuje uložit informace
VíceOperační systém UNIX
UNIX z pohledu uživatele 1 Operační systém UNIX Nejzákladnější komponenty:! jádro (kernel)! shell! utility Jádro operačního systému! v podstatě představuje vlastní operační systém! fyzicky je to jediný
Více09. Memory management. ZOS 2006, L.Pešička
09. Memory management ZOS 2006, L.Pešička Správa paměti paměťová pyramida absolutní adresa relativní adresa počet bytů od absolutní adresy fyzický prostor adres fyzicky k dispozici výpočetnímu systému
VíceZOS 9. cvičení, ukázky kódu. Pavel Bžoch
ZOS 9. cvičení, ukázky kódu Pavel Bžoch Obsah Komunikace mezi procesy Atomické operace TSL a CAS Zámky Semafory Semafory vypsání věty Monitor Bariéra pomocí monitoru Implementace semaforu pomocí monitoru
VíceArchitektura a koncepce OS OS a HW (archos_hw) Architektura a koncepce OS Jádro OS (archos_kernel) Architektura a koncepce OS Typy OS (archos_typy)
Architektura a koncepce OS OS a HW (archos_hw) Aby fungoval OS s preemptivním multitaskingem, musí HW obsahovat: 1. (+2) přerušovací systém (interrupt system) 2. (+2) časovač Při používání DMA: 1. (+1)
VíceČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
Vzorový příklad pro práci v prostředí MPLAB Zadání: Vytvořte program, který v intervalu 200ms točí doleva obsah registru reg, a který při stisku tlačítka RB0 nastaví bit 0 v registru reg na hodnotu 1.
VíceZadání Vytvoříme jednoduchý multithread HTTP server v jazyce Java Spustíme si ho na lokálním počítači A otestujeme ho Zdrojový kód je v
Vývoj informačních systémů Námět na praktické cvičení Klient Server (nepovinné) Zadání Vytvoříme jednoduchý multithread HTTP server v jazyce Java Spustíme si ho na lokálním počítači A otestujeme ho Zdrojový
VíceOperační systémy. Přednáška 2: Procesy a vlákna
Operační systémy Přednáška 2: Procesy a vlákna 1 Procesy Všechen běžící software v systému je organizován jako množina sekvenčně běžících procesů. (Sekvenční) proces Abstrakce běžícího programu. Sekvence
VíceTransakce a zamykání Jiří Tomeš
Transakce a zamykání Jiří Tomeš Administrace MS SQL Serveru (NDBI039) O čem to dnes bude Úvodní opakování základních pojmů Jištění transakcí Speciální konstrukce Typy transakcí Závěrečný souhrn, použité
VíceProgramování v jazyce C a C++
Programování v jazyce C a C++ Příklad na tvorbu třídy Richter 1 4. prosince 2017 1 Ing. Richter Miloslav, Ph.D., UAMT FEKT VUT Brno Dvourozměrné pole pomocí tříd Zadání Navrhněte a napište třídu pro realizace
VícePráce se soubory. Základy programování 2 Tomáš Kühr
Práce se soubory Základy programování 2 Tomáš Kühr Soubory z pohledu C Soubor zjednodušeně chápeme jako posloupnost bytů uložených někde na disku Datový proud (anglicky stream) Ještě obecnější přístup
VíceVstupně - výstupní moduly
Vstupně - výstupní moduly Přídavná zařízení sloužící ke vstupu a výstupu dat bo k uchovávání a archivaci dat Nejsou připojována ke sběrnici přímo, ale prostřednictvím vstupně-výstupních modulů ( ů ). Hlavní
VíceIUJCE 07/08 Přednáška č. 6
Správa paměti Motivace a úvod v C (skoro vždy) ručně statické proměnné o datový typ, počet znám v době překladu o zabírají paměť po celou dobu běhu programu problém velikosti definovaných proměnných jak
VíceMetody připojování periferií
Metody připojování periferií BI-MPP Přednáška 13 Ing. Miroslav Skrbek, Ph.D. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze Miroslav Skrbek 2010,2011
VíceC++ 0x aka C++11. Základním kamenem je třída std::thread
C++ 0x aka C++11 Jako jiné jazyky, např. Free/Object Pascal, se C++ ve standardu ++0x dočkal podpory vláken Výhodou je, že standardní knihovna je platformě nezávislá na úrovni zdrojového kódu Základním
Vícekonstruktory a destruktory (o)
konstruktory a destruktory (o) - slouží k ovlivnění vzniku (inicializace) a zániku (úklid) objektu - základní myšlenkou je, že proměnná by měla být inicializována (nastavena do počátečního stavu) a zároveň
VíceSpojová implementace lineárních datových struktur
Spojová implementace lineárních datových struktur doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 13. března 2017 Jiří Dvorský (VŠB
VícePočítačové sítě Transportní vrstva. Transportní vrstva
UDP TCP Rozhraní služeb Rozhraní protokolů 17 6 ICMP IGMP OSPF 01 02 89 SAP Síťová vrstva IP Rozhraní přístupu k I/O ARP Ethernet driver RARP Vrstva síťového rozhraní 1 DATA Systém A Uživatel transportní
Více