General information

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 profesor UAM
Faculty Faculty of Physics
Semester 2021/2022 (winter)
Duration 30
ECTS 5
USOS code 04-W-LSS-45

Timetable

Module aim (aims)

• Explaining of the role and functionalities of operating systems, mainly Linux, indicating its design principles and applications, for which she/he will argue for the advantages of this operating system over others

• Working in Linux operating system and taking advantage of its key functionalities, including communication between users and transferring of files

• Explaining of procedures of information, processes, memory, files and I/O devices management in Linux operating system as well as its use for protection of user resources

• Executing of basic administrator activities in Linux operating systems, as well as she/he will be able to automate them using shell programming (scripts)

• The direct use of system calls (system programming) for handling files, processes, signals and pipes

• Benefiting from system information sources, as well as from literature and internet ones for independent solving problems in service activities and system programing in Linux operating system

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

none

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

Books:

A. Silberschatz, P.B. Galvin, G. Gagne, Operating System Concepts, 8th Edition, J.Wiley & Sons Inc., 2008

D. Tansley, Linux & Unix Shell Programming, Addison-Wesley, 2000

K. Haviland, D. Gray, B. Salama, Unix System Programming, Addison-Wesley, 1999, ISBN-13: 978-0201877588