Nazwa przedmiotu:
UNIX Fundamentals
Koordynator przedmiotu:
Dr inż. Marek Kozłowski, dr Paweł Jóźwiak
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia II stopnia
Program:
Data Science
Grupa przedmiotów:
Współny
Kod przedmiotu:
1120-IN000-ISA-0127
Semestr nominalny:
1 / rok ak. 2024/2025
Liczba punktów ECTS:
2
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
1. godziny kontaktowe – 30 h; w tym a) obecność na laboratoriach – 30 h 2. praca własna studenta – 34 h; w tym a) przygotowanie do zajęć laboratoryjnych – 30 h b) przygotowanie do testu – 4 h Razem 64 h, co odpowiada 2 pkt. ECTS
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
1. obecność na laboratoriach – 30 h Razem 30 h, co odpowiada 1 pkt. ECTS
Język prowadzenia zajęć:
angielski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
1. obecność na laboratoriach – 30 h 2. przygotowanie do zajęć laboratoryjnych – 30 h Razem 60 h, co odpowiada 2 pkt. ECTS
Formy zajęć i ich wymiar w semestrze:
  • Wykład0h
  • Ćwiczenia0h
  • Laboratorium30h
  • Projekt0h
  • Lekcje komputerowe0h
Wymagania wstępne:
none
Limit liczby studentów:
Laboratory – the number of students in a group matches the limits defined by the Warsaw University of Technology
Cel przedmiotu:
The course is intended for the students unfamiliar with Unix-like operating systems as a preparation for other BSc courses that require advanced Unix knowledge, including: Elements of Operating Systems, Unix Programming and Introduction to TCP/IP Networking. The course aims at introducing basic concepts concerning operating systems of the *nix family, using POSIX-compliant CLI system interface and basic commands, services and utilities. Upon completing the course students should: 1. have general knowledge on main Unix system branches (System V and BSD, GNU/Linux), POSIX and SUS standards, 2. have basic knowledge on FLOSS concepts, open and free licenses, * BSD and Linux / GNU systems, 3. be able to use shell (bash), 4. know basic Unix commands, 5. be able to use the Unix help (man pages), 6. be familiar with mass storage organization and process management, 7. have elementary knowledge on configuration of Unix systems and the principles of their administration, 8. be able to manage services (deamons), 9. be able to schedule tasks with cron and analyze system events with syslog-ng, 10. be familiar with vim editor, 11. construct text templates with POSIX BRE/ERE regular expressions, 12. be able to write simple scripts in bash and AWK, 13. be able to compile programs written in C from the command line (gcc compiler), use the make program and write simple Makefile files, 14. use the IDEs installed on lab computers.
Treści kształcenia:
Using and Customizing GTK-based Desktop Environments. Users, Groups, IDs. Basic Commands. Working in the Bash Shell. Filesystems, File Types, Directory Tree Structure, File Permissions, ACLs. Basic Process Management. Most Critical Edit-To-Configure Files. Using Standard System Daemons (Cron, Syslog, ...). Efficient Text Editing with Vim. Optionally: Bash Programming Fundamentals. Text Processing with Sed. AWK Programming. Introduction to *nix C Programming (Using GCC, Make, GDB, Strace).
Metody oceny:
Graded lab tasks, final practical test.
Egzamin:
nie
Literatura:
1. Slides for this course available for download in PDF format. 2. D. Myers, Fundamentals of UNIX, Cisco Press , 2004. 3. Æ. Frisch, Essential System Administration, Third Edition, O'Reilly Media, 2002. 4. Any *nix documentation: The Linux Documentation (TLDP) or any main Linux distribution documentation or FreeBSD documentation or Sun Solaris documentation. 5. Man pages and info pages. 6. Official documentation for programs/projects being discussed.
Witryna www przedmiotu:
.
Uwagi:
.

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Charakterystyka W01
Has ordered, theoretically founded background knowledge in the field of operating systems
Weryfikacja: test
Powiązane charakterystyki kierunkowe: DS2_W13**
Powiązane charakterystyki obszarowe:
Charakterystyka W02
Knows the basic methods, techniques and tools used to solve simple tasks in the field of computer operating systems
Weryfikacja: test
Powiązane charakterystyki kierunkowe: DS2_W14**
Powiązane charakterystyki obszarowe:

Profil ogólnoakademicki - umiejętności

Charakterystyka U01
Can obtain information from the literature, databases and other sources, integrate and interpret them, draw conclusions and formulate opinions
Weryfikacja: graded lab tasks
Powiązane charakterystyki kierunkowe: DS2_U09
Powiązane charakterystyki obszarowe:
Charakterystyka U02
Can efficiently process text files (Bash, AWK)
Weryfikacja: graded lab tasks
Powiązane charakterystyki kierunkowe: DS2_U17**
Powiązane charakterystyki obszarowe:
Charakterystyka U03
Has the ability to use operating systems on the API level
Weryfikacja: test
Powiązane charakterystyki kierunkowe: DS2_U17**
Powiązane charakterystyki obszarowe:
Charakterystyka U04
Is able to formulate a specification of simple systems in regards to hardware, system software and application functional features
Weryfikacja: test
Powiązane charakterystyki kierunkowe: DS2_U20**
Powiązane charakterystyki obszarowe:

Profil ogólnoakademicki - kompetencje społeczne

Charakterystyka K01
Knows examples and understands the cause of malfunctioning systems, which have led to serious financial or social losses or to a serious loss of health and even life.
Weryfikacja: test
Powiązane charakterystyki kierunkowe: DS2_K05
Powiązane charakterystyki obszarowe: