Systemnahe Programmierung: Code für die Praktika
Go to file
stsh 91762d5c9d add labs 2022-02-17 11:32:44 +01:00
P01_Erste_Schritte_mit_C add labs 2022-02-17 11:32:44 +01:00
P02_Funktionen_Datentyp_enum add labs 2022-02-17 11:32:44 +01:00
P03_Bit_Operation_struct_typedef add labs 2022-02-17 11:32:44 +01:00
P04_Modularisieren_von_C_Code add labs 2022-02-17 11:32:44 +01:00
P05_TicTacToe add labs 2022-02-17 11:32:44 +01:00
P06_Personen_Verwaltung_Linked_List add labs 2022-02-17 11:32:44 +01:00
P07_Prozesse_und_Threads add labs 2022-02-17 11:32:44 +01:00
P08_Sync add labs 2022-02-17 11:32:44 +01:00
P09_File_Operations add labs 2022-02-17 11:32:44 +01:00
P10_IPC add labs 2022-02-17 11:32:44 +01:00
README.md add labs 2022-02-17 11:32:44 +01:00
en-zhaw-ines-rgb.png add labs 2022-02-17 11:32:44 +01:00

README.md

SNP - Laboratory Planning

Description

TODO

Views

Github-Pages

.pdf

Is-State

Requirements Chapter Lecture Contents Previous Knowledge Lab handling FS21 Lab Comments Lab Contents
Chapter 1
Sie können ein single-file C Programm von Grund auf programmieren.  C Programmelemente no implicit -- Hello world
Sie binden Teile der C Standard Library mit include ein und setzen Macros ein. include, define no implicit -- Umwandlungstabelle
Sie verwenden Input- und Output-Funktionen für strukturierte Ein- und Ausgabe. Input/Output no implicit -- word count
Bash Script
Chapter 2
Sie haben die Kompetenz kleinere Programme in C zu verstehen, zu programmieren und zu testen. comments yes implicit bit operations comments
variables yes implicit QR-Code output defines variables
data types yes explicit fputs data types
literals yes implicit getchar literals
operators yes implicit switch-case operators
expressions yes implicit Bash script pipe expressions
control structures yes implicit qrencode control structures
formatted I/O functions no explicit printf
complex data types no explicit scanf
enums yes explicit complex data types
structures no explicit enums
structures
Chapter 3
functions no explicit Wochentag enum functions
by value yes explicit typedef by value
variable scope in principle explicit scanf variable scope
declarations, definitions in principle explicit struct declarations, definitions
function
control strcutures
Chapter 4
pre-processor/compiler … no explicit Modularisation header files pre-processor/compiler …
modularity in C no explicit include guards modularity in C
libraries no explicit makefiles libraries
Sie verfügen über die Voraussetzungen um grössere Programme zu verstehen, anzupassen und erstellen und testen zu können.   C standard library no explicit C standard library
make no explicit make
Chapter 5
Sie können die Funktionsweise des sizeof Operators erklären und ihn anwenden. sizeof no explicit TicTacToe sizeof sizeof
Sie wissen wie Arrays in C aufgebaut und im Speicher angelegt werden und wie auf sie zugegriffen werden kann. arrays no explicit TicTacToe arrays
Sie verstehen die Darstellung von Strings und ihre Ähnlichkeit zu char-Arrays und können die wichtigsten String Funktionen der Standard Library einsetzen. strings no no
Chapter 6
pointers no explicit Integer Rechner pointers to struct pointers
pointer and arrays no explicit memory management pointer and arrays
Sie verstehen die Speicherverwaltungskonzepte und können den Speichergebrauch optimieren. memory management no explicit pointer arithmetic memory management
Chapter 7
paramaters by reference no explicit Personen Verwaltung pointers paramaters by reference
multidimensional arrays no explicit memory management multidimensional arrays
variable paramaters no none linked lists variable paramaters
code issues C no none code issues C
test yes explicit test
Chapter 8
System Calls no explicit Bash Script memory management System Calls
C compiler implementation no none stdlib C compiler implementation
File hierarchy no none file handling File hierarchy
Sie können die Operation eines File-Systems erklären und die entsprechenden System-Aufrufe anwenden.  files and file I/O no explicit directories files and file I/O
Chapter 9
Sie verstehen die Konzepte von Prozessen und Threads und können diese fachgerecht einsetzen und testen. Sie können mit Synchronisierungs-Methoden und Inter-Prozess-Kommunikation arbeiten.  processes no explicit Processes and Threads fork processes
threads yes explicit pthreads threads
Chapter 10
pipes no explicit pipes
sockets no none sockets
shared memory no explicit shared memory
message passing no explicit message passing
signals no explicit signals
Chapter 11
mutex no explicit mutex
semaphores no explicit semaphores
Chapter 12
Sie beherrschen den Umgang mit POSIX-Clocks und hochauflösenden Timern. 
Chapter 13
Chapter 14
multicore basics multicore basics

Target-State

Week Lab Name Requirement Number of files Preprocessor Compiler Build Function Boilerplate Lecturer
Week 1 Lab1 Erste Schritte mit C single file, includes, defines, command line compile, output Hello world from scratch one include define command line no output (input?) no welo
Week 2 Lab2 Funktionen, Datentyp "enum" enum functions make yes bazz
Week 3 Lab3 Bit Operation struct typedef struct typedef bit operations fisa
Week 4 Lab4 Modularisieren von C Code C/H files input guard Makefile huno
Week 5 Lab5 TicTacToe complete an existing multi file program using the sizeof operator, arrays (and manipulating strings?) multi make sizeof arrays (strings?) grop
Week 6 Lab6 Personen Verwaltung Linked List ability to program a multi file program using data pointers and variable input from scratch multi guards extend make yes data pointers variable input no donn
Week 8 Lab7 Prozesse und Threads donn
Week 10 Lab8 Sync Synchronisation donn
Week 12 Lab9 File Operations scia
Week 13 Lab10 IPC scia
Week 14 Lab11 Bash Bash stsh