SubjectsSubjects(version: 945)
Course, academic year 2023/2024
   Login via CAS
Programming in Unix 2 - NSWI138
Title: Programování v Unixu 2
Guaranteed by: Network and Labs Management Center (32-SISAL)
Faculty: Faculty of Mathematics and Physics
Actual: from 2020
Semester: summer
E-Credits: 3
Hours per week, examination: summer s.:1/1, C+Ex [HT]
Capacity: unlimited
Min. number of students: unlimited
4EU+: no
Virtual mobility / capacity: no
State of the course: not taught
Language: English
Teaching methods: full-time
Teaching methods: full-time
Guarantor: Mgr. Vladimír Kotal
Class: Informatika Bc.
Classification: Informatics > Software Engineering
Pre-requisite : NSWI015
Annotation -
Last update: T_SISAL (13.05.2009)
The Programming in UNIX II. lecture together with the seminar aim at extending the knowledge gained from the rogramming in UNIX lecture, part I.
Syllabus -
Last update: T_SISAL (13.05.2009)

Program debugging. Special user mode libraries for program debugging

(libumem(3lib), watchmalloc(3lib)). Program tracing at the level of system

calls, library functions and functions defined by the program itself

(truss(1), gcore(1), pstack(1), mdb(1)). /proc filesystem. Debugging features

of the dynamic linker.

Advanced network programming. Raw sockets. Advanced usage of getsockopt() and

setsockopt(). tcpdump(1) for debugging of network applications. IPv6.

Working with terminals and pseudo terminals. Differences of terminal

implementations in SVR3, SVR4, and BSD. Writing a terminal application.

Secure programming. Writing more secure code and avoiding common pitfalls.

Classification of bugs. Examples of programming techniques to minimize future

security issues (privilege separation, sandboxing, fine-grained privileges

versus UID 0). Examples.

Advanced POSIX thread programming. Alternative thread API (Solaris threads).

API comparison.

Advanced interprocess communication. Sending file descriptors between

processes. Doors. Advanced ioctl(2). Asynchronous IO as defined by POSIX.

pread/pwrite. posix_spawn.

 
Charles University | Information system of Charles University | http://www.cuni.cz/UKEN-329.html