- Name of course:
- UNIX
- Coordinator of course:
- mgr inż. Marcin Borkowski
- Type of course:
- Compulsory
- Level of education:
- First cycle studies
- Programme:
- Informatyka
- Group of courses:
- Wspólne
- Code of course:
- Nominal semester:
- 6 / AY 2009/2010
- Number of ECTS credits:
- 3
- Number of hours of student’s work to achieve learning outcomes:
- Number of ECTS credits on the course with direct participation of academic teacher:
- Language of course:
- polish
- Number of ECTS credits on practical activities on the course:
- Form of didactic studies and number of hours per semester:
-
- Lecture15h
- Exercise type of course0h
- Laboratory30h
- Project type of course0h
- Computer lessons0h
- Preliminary requirements:
-
Podstawy Programowania Strukturalnego I semestr
Programowanie Obiektowe III semestr
- Limit of students:
- Purpose of course:
- Poznanie zaawansowanych technik programowania wywołań funkcji systemowych w standardzie POSIX. Nabranie wprawy w programowaniu dla platformy UNIX/Linux. Poznanie problemów związanych z pisaniem przenośnego kodu oraz metod ich rozwiązywania.
- Contents of education:
- Wykład:
1. Omówienie specyfiki programowania w systemie UNIX i programowania rozproszonego
2. Omówienie standardów POSIX i SYSTEM V
3. Omówienie standardów kodowania
4. Procesy i sygnały, sygnały czasu rzeczywistego, omówienie mechanizmu działania wraz z typowymi rozwiązaniami (przykłady kodu) oraz z omówieniem typowych błędów programistycznych
5. Katalogi i pliki, blokowanie plików, omówienie mechanizmu działania wraz z typowymi rozwiązaniami (przykłady kodu) oraz z omówieniem typowych błędów programistycznych
6. Kolejki FIFO i pipe, omówienie mechanizmu działania wraz z typowymi rozwiązaniami (przykłady kodu) oraz z omówieniem typowych błędów programistycznych
7. mechanizmu IPC z SYSTEM V, omówienie mechanizmu działania wraz z typowymi rozwiązaniami (przykłady kodu) oraz z omówieniem typowych błędów programistycznych
8. Asynchroniczny dostęp do plików, omówienie mechanizmu działania wraz z typowymi rozwiązaniami (przykłady kodu) oraz z omówieniem typowych błędów programistycznych
9. Gniazda sieciowe (lokalne,tcp,udp,raw), omówienie mechanizmu działania wraz z typowymi rozwiązaniami (przykłady kodu) oraz z omówieniem typowych błędów programistycznych
10. Wątki posix'owe oraz posix'owe mechanizmy synchronizacji, omówienie mechanizmu działania wraz z typowymi rozwiązaniami (przykłady kodu) oraz z omówieniem typowych błędów programistycznych
Laboratorium:
Ćwiczenia sprawdzające wiedze z wykładu. Każdemu tematowi wykładowemu odpowiada jedno oceniane zadanie. Zadania polegają na samodzielnym rozwiązaniu zadania podanego przez prowadzącego. Ramy czasowe są ograniczone do 90 minut. Ostatnie zadanie ma postać projektu wykonywanego pod nadzorem prowadzącego bez limitów czasowych.
- Methods of evaluation:
- Ocena z laboratorium jest oceną z całego przedmiotu. Kryteria oceny laboratorium:
• Do wykonania jest 8 zadań po 8 punktów (tematy tak jak w archiwum) co daje 64 oraz projekt za 44 punkty
• Najgorszy wynik z laboratoriów jest odrzucany zatem suma do zdobycia wynosi 100
• Aby zaliczyć przedmiot należy zdobyć minimum 51 punktów w sumie i nie mniej niż 32 punkty z zadań
- Exam:
- Literature:
- 1. “UNIX. Programowanie usług sieciowych” - tom 1 i II Richard W. Stevens WNT
2. “Programowanie w środowisku systemu UNIX” W. Richard Stevens WNT
3. “Programowanie w systemie UNIX dla zaawansowanych” Marc J. Rochkind WNT
- Website of the course:
- Notes:
Effects of education