EventoWeb
Zürcher Hochschule für Angewandte Wissenschaften
Menu
Home
User Menu
Not registered
Login
[
German (Switzerland)
German (Switzerland)
] [
English
English
]
[
de
de
] [
en
en
]
Not registered
Login
EventoWeb
Kontakt zu Service Desk
Online-Dokumentation
Allgemeiner Zugriff
Module suchen
t.BA.IT.SNP.19HS (System-oriented programming)
Module: System-oriented programming
This information was generated on: 05 December 2024
No.
t.BA.IT.SNP.19HS
Title
System-oriented programming
Organised by
T InES
Credits
4
Description
Version: 2.0 start 01 February 2019
Short description
C and Unix-like operating systems, such as Linux, are closely related and widely used in industry. In this module, students learn the fundamentals of Unix-like OSs, how to program under Linux and how to interface with it via POSIX calls. Shell scripts are also handled.
Module coordinator
Doran, Hans Dermot (donn)
Learning objectives (competencies)
Objectives
Competences
Taxonomy levels
You can explain the fundamental components of a computer system including cache, memory management unit, DMA and floating point units. You can explain how a computer system boots.
F, M
C2
You can use an operating system shell and program shell scripts
F, M
C3
You have the ability to use, understand, program and test small programs in the C programming language. You have the competence to program and test larger programs
F, M
C3 (C4)
You understand and can use the concepts of processes and threads and can use the appropriate system calls and test multi-threading and multi-process programs. You can understand and use synchronisation and inter-process communication system calls.
F, M
C3
You can explain the operation of a file system and use the appropriate system calls.
F, M
C3
You can manage POSIX clocks and high-resolution timers
F, M
C3
You understand memory management and optimise memory accesses
F, M
C3
Module contents
Programming in C (14 Lectures)
Introduction to C
Types and composite types (standard types and structs)
Standard control flow (for, if, while)
String and string functions. Pointers and (multidimensional-) arrays. Pointer arithmetic. Structures and pointers.
Modular programming, interfaces, tools and verification and validation (headers, make, CUnit)
Local, global and static variables. Dynamic memory management, stack and heap.
Functions: „Call by address“: pointers, pointers to functions, multi-dimensional arrays as parameters and constant parameters. Functions with variable number of parameters and command line parameters.
Operating Systems Programming (14 Lectures)
Bash command line input and scripts, SSH
Processes and threads and relationship to schedulers (FIFO, RR, CFS)
Interprocess communication (pipes, sockets ..)
Synchronisation (mutex, semaphores and signals)
File systems and I/O programming
Memory models and accesses
POSIX clocks and high resolution timers
Laboratories
Teaching materials
Slides
Supplementary literature
Prerequisites
PROG1 Programming and Testing Fundamentals
Teaching language
(X) German ( ) English
Part of International Profile
( ) Yes (X) No
Module structure
Type 3a
For more details please click on this link:
T_CL_Modulauspraegungen_SM2025
Exams
Description
Type
Form
Scope
Grade
Weighting
Graded assignments during teaching semester
Exercises
Oral
10 Exercises
Grade
20%
End-of-semester exam
Exam
Written
90 Minutes
Grade
20%
Remarks
Legal basis
The module description is part of the legal basis in addition to the general academic regulations. It is binding. During the first week of the semester a written and communicated supplement can specify the module description in more detail.
Course: Systemnahe Programmierung - Praktikum
No.
t.BA.IT.SNP.19HS.P
Title
Systemnahe Programmierung - Praktikum
Note
No module description is available in the system for the cut-off date of 01 August 2099.
Course: Systemnahe Programmierung - Vorlesung
No.
t.BA.IT.SNP.19HS.V
Title
Systemnahe Programmierung - Vorlesung
Note
No module description is available in the system for the cut-off date of 01 August 2099.