5034.16 - System programming in Unix / Linux


Course number
5034.16
Title
System programming in Unix / Linux
ECTS
7.5
Prerequisites
Computer Engineering GR (AB) 60 ECTS including the courses: Linux operating system 7.5 ECTS, Data communication with applications in Linux 7.5 ECTS as well as courses in object oriented programming with C ++ 7.5 ECTS.
Purpose
The course provides knowledge and skills in using a UNIX / Linux based operating system and its most common commands and system programs. Operating system services in the form of system calls and library functions according to the POSIX standard are used to build applications with C++ as programming languages. Programming of parallel processes and threads is processed with the necessary synchronization mechanisms. Simple applications with sockets and TCP / IP protocol provide programming experience of data communication.
Content
The course includes the following elements: - programming with C++ in the UNIX / Linux environment - system commands and shell programs - library functions and system calls according to POSIX, - Processes, Wires, Process Processing Mechanisms and Signals according to POSIX - basic synchronization mechanisms - I / O and files - Basic TCP / IP programming with sockets
Learning and teaching approaches
Remote education from Mid Sweden University: DT065G System Programming in the Unix / Linux Environment. Swedish title: DT065G Systemprogrammering i Unix/Linux. Early in the teaching there is a mandatory activity, written assignment. The extent of the course work is estimated at approximately 200 hours.
Learning outcomes
After the course you will be able to - Use the most common commands and system programs in a UNIX / Linux system, - use a UNIX / Linux application development software, - from C ++ utilize system calls for exploitation of services from the operating system, - account for and utilize different mechanisms for communication between executing processes, - account for the principles for, and be able to utilize, at least two different synchronization mechanisms, - Use POSIX standards to design source-portable applications, - account for processes, threads, signals, files and I / O systems, - write a program that uses sockets to establish a TCP connection.
Assessment method
0.0 credits, I104: Written assignment Rating: Passed or Failed 3.0 hp, L104: Laboratory Rating: Passed or Failed 4.5 hp, T104: Exam Rating: A, B, C, D, E, Fx and F. A-E is Approved, Fx and F are Fail. Rating criteria for the subject can be found at www.miun.se/valuation criteria. Note: Those who did not pass the course week three Written assignment, moment I104, will lose its place as the University registers an "early interruption".
Marking scale
7-
Bibliography
Robbins K, Robbins S: Unix Systems Programming, Communication, Concurrency and Threads, Second Edition Prentice Hall PTR 2003 ISBN 0130424110
Contact
Hannes Gislason