Nazwa przedmiotu:
Unix - architektura, programowanie i administrowanie
Koordynator przedmiotu:
Grzegorz BLINOWSKI
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia I stopnia
Program:
Informatyka
Grupa przedmiotów:
Przedmioty techniczne
Kod przedmiotu:
UXP1A
Semestr nominalny:
7 / rok ak. 2012/2013
Liczba punktów ECTS:
4
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
60
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
Formy zajęć i ich wymiar w semestrze:
  • Wykład30h
  • Ćwiczenia0h
  • Laboratorium0h
  • Projekt15h
  • Lekcje komputerowe0h
Wymagania wstępne:
Podstawy systemów operacyjnych, jezyk programowania C
Limit liczby studentów:
30
Cel przedmiotu:
Celem wykładu jest zapoznanie słuchaczy z : # architekturą wewnętrzną systemu UNIX, # interfejsem jądra oferowanym programiście systemowemu, oraz # wybranymi elementami administrowania systemu UNIX.
Treści kształcenia:
Krótkie wprowadzenie do historii systemu; standardy. Zarys architektury systemu UNIX. Funkcje jądra. Podsystem zarządzanie procesami - stany procesów, deskryptor procesu, pokrewieństwo procesów, dziedziczenie środowiska, przydzielanie czasu procesora. Wywołania systemowe fork, exec, exit, wait. Sygnały i ich obsługa. Własne procedury obsługi sygnałów (wywołania systemowe signal, kill, sigaction), „stary” i „nowy” mechanizm obsługi sygnałów. Komunikacja procesów poprzez potoki (wywołania pipe, close, read, write, popen, pclose) oraz potoki nazwane (wywołanie mknod). Przykład architektury klient - serwer. Komunikacja IPC - problemy nazewnictwa (funkcja ftok), deskryptory kanałów IPC, limity. Kolejki komunikatów (wywołania systemowe msgget, msgctl, msgsnd, msgrcv). Semafory (wywołania systemowe semget, semctl, semop), realizacja operacji semaforowych P i V, semafora z ustaloną wartością. Wspólna pamięć (wywołania systemowe shmget, shmat, shmdt, shmctl). Cechy charakterystyczne procesów typu demon, szkielet procesu. System pamieci wirtualnej – VM. Segmenty pamięci. Stronicowanie i mechanizm pageout. Powiązanie VM i VFS – funkcja mmap(). Mechanizm wątków POSIX. Relacje wątek –proces. Wątki a wydajna realizacja serwerów. Wątki a sygnały. Interfejs sieciowy TLI. Strumienie - struktury danych i funkcje, operacje na strumieniach. Porównanie interfejsu gniazd BSD i interfejsu TLI. Tryby terminala, opis terminala (wywołanie ioctl). Pseudo terminale. Organizacja systemu plików. Deskryptory plików na dysku i w pamięci operacyjnej, fizyczna reprezentacja plików. Wywołania systemowe dotyczące systemu plików. Blokowanie dostępu do pliku. Interfejs wirtualnego systemu plików: VFS, struktury vnode, vfs, vfsw.
Metody oceny:
Ocena na podstawie: 1) kolokwiow: 2 kolokwia po c.a. 25 p. - łącznie 50p. 2) projektu: 50 p. Zaliczenie projektu i kolokwiów, tj. uzyskanie z projektu i sumarycznie kolokwiów po 25 p. jest wymagane do zaliczenia przedmiotu.
Egzamin:
nie
Literatura:
1. B. Goodheart, J. Cox, The magic garden explained - the internals of Unix System V Release 4 Prentice Hall 1994. 2. Uresh Vahalia, Jadro systemu UNIX, WNT; 2001 3. Marc Rochkind, Programowanie w systemie Unix dla zawansowanych, WNT (wyd. 2; 2005) 4. David R. Butenhof, Programming with Posix Threads, Addison-Wesley, 1997 5. Daniel P. Bovet, Marco Cesati, LINUX kernel, Wydawnictwo RM (O’Reilly) 2001 6. W. Richard Stevens, Advanced Programming in the UNIX Environment, WNT - różne wydania
Witryna www przedmiotu:
http://www.ii.pw.edu.pl/~gjb
Uwagi:

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Efekt Wpisz opis
Student, który ukończył predmiot posiada znajomość podstaw architektury systemu UNIX, koncepcji funkcji jądra oraz podsystemu zarządzanie procesami, wirtualnego systemu plików, podsystemu zarządzania pamięcią oraz mechnaizmów komunikacji miedzyprocesowej
Weryfikacja: Kolokwium
Powiązane efekty kierunkowe: K_W09, K_W10, K_W14, K_W19
Powiązane efekty obszarowe: T1A_W04, T1A_W03, T1A_W04, T1A_W05, T1A_W03, T1A_W04, T1A_W05, T1A_W07, T1A_W07

Profil ogólnoakademicki - umiejętności

Efekt Wpisz opis
Student, który ukończył przedmiot potrafi: tworzyć wydajne i optymalne pod wzgledem wykorzystania zasobów systemowych oprogramowanie systemowe pracujące w środowisku systemu Unix orz systemów "Unixo-podobnych"
Weryfikacja: Projekt
Powiązane efekty kierunkowe: K_U05, K_U07, K_U09, K_U13, K_U14, K_U15, K_U20
Powiązane efekty obszarowe: T1A_U01, T1A_U15, T1A_U03, T1A_U05, T1A_U16, T1A_U07, T1A_U09, T1A_U14, T1A_U09, T1A_U15, T1A_U16, T1A_U13, T1A_U15

Profil ogólnoakademicki - kompetencje społeczne

Efekt Wpisz opis
Student, który ukończył przedmiot ma szanse rozwinąć kompetencje spoleczne związane z pracą w zespole
Weryfikacja: Projekt
Powiązane efekty kierunkowe: K_K03, K_K04
Powiązane efekty obszarowe: T1A_K03, T1A_K04