General information

Course type AMUPIE
Module title Linux, shell and system programming
Language English
Module lecturer prof. UAM dr hab. Grzegorz Musiał
Lecturer's email gmusial@amu.edu.pl
Lecturer position professor
Faculty Faculty of Physics
Semester 2023/2024 (winter)
Duration 30
ECTS 5
USOS code 04-W-PPDS-45

Timetable

lecture 15h + computer lab 15h = 30h

Thursday 15:00-16:30, Collegium Physicum, Linux computer lab 42, after signing in and e-mail notification (gmusial@amu.edu.pl), the date of classes will be adjusted to the participants' time possibilities

Module aim (aims)

Pre-requisites in terms of knowledge, skills and social competences (where relevant)

The basic knowledge and practice with UNIX/Linux operating systems and with C/C++ programming

Syllabus

Week 1: Linux operating system structures and functionalities

Week 2: File system in UNIX/Linux systems, disk structures, catalog and file handling, vi editor

Week 3: Shells, multitasking, pipelining, the user work interface. Communication between users

Week 4: Introduction to programming in the shell language

Week 5: Programming in the shell language, cron demon, elements of system administration

Week 6: Solving practical problems by constructing own shell scripts

Week 7: Redirecting of standard I/O and exploiting of starting parameters in simple C programs

Week 8: Programming with direct use of system functions for handling files and directories

Week 9: Programming with direct use of system functions for handling files and directories

Week 10: Programming with direct use of system functions for handling processes

Week 11: Programming with direct use of system functions for handling signals

Week 12: Programming with direct use of system functions for handling pipes

Week 13: Programming with direct use of system functions for solving own problems

Week 14: Presentation of own programs and discussion of the applied solutions

Week 15: Verification of earned knowledge, its maintenance, assigning of grades, summary

Reading list

  1. Silberschatz, P.B. Galvin, G. Gagne, Operating System Concepts, 8th Edition, J.Wiley & Sons Inc., 2008
  2. Tansley, Linux & Unix Shell Programming, Addison-Wesley, 2000
  3. K. Haviland,‎ D. Gray,‎ B. Salama, Unix System Programming, Addison-Wesley, 1999, ISBN-13: 978-0201877588