Skip to main content

System software

2023/2024
Programme:
Interdisciplinary University Study Programme Computer Science and Mathematics
Year:
3 year
Semester:
first
Kind:
optional
Group:
Modul: Algoritmi in sistemski programi
ECTS:
6
Language:
slovenian
Course director:

Tomaž Dobravec

Hours per week – 1. semester:
Lectures
3
Seminar
0.67
Tutorial
0
Lab
1.33
Content (Syllabus outline)

basics about machine and assembly languages
content and organization of object files
assembler, linker, loader
static and dynamic linking
macro processors
system calls and interrupts
input/output implementation and file system tools
memory management
debugging
linux kernel
virtual machines
loading, linking and running in java virtual machine

Readings

Leland L. Beck: System software: An Introduction to Systems Programming (3. izdaja). Addison-Wesley, 1997.
K. Robbins and S. Robbins: UNIX Systems Programming: Communication, Concurrency and Threads (2.izdaja). Prentice Hall, 2003.
Damjan Zazula, Mitja Lenič: Principi sistemske programske opreme. Založba FERI 2008

Objectives and competences

Objectives:
The main goal of this course is to introduce the concepts, tools and standards of system programming and to show the current implementations in the actual operating systems.

Competences:
Developing skills in critical, analytical and synthetic thinking.

The ability to understand and solve professional challenges in computer and information science.
The ability to define, understand and solve creative professional challenges in computer and information science,
The ability to apply acquired knowledge in independent work for solving technical and scientific problems in computer and information science, the ability to upgrade acquired knowledge.

Basic skills in computer and information science, which includes basic theoretical skills, practical knowledge and skills essential for the field of computer and information science,
Practical knowledge and skills of computer hardware, software and information technology necessary for successful professional work in computer and information science.

Intended learning outcomes

Knowledge and understanding:
The knowledge of the basic terms of system programming, operating systems and tools with implementation. Understanding the principles of system programs and some other basic building blocks of the operating system.
Application:
Use and development of system software.
Reflection:
Knowledge of the basic concepts of system software is crucial to understanding how a computer system works. Knowledge is useful both in application and development of user software, as well as in the design and manufacture of hardware.
Transferable skills:
The knowledge of the basic building blocks of a computer system helps us to find the limits of computer system and therefore contributes to higher quality work in virtually all areas of computer use and development of software and hardware.

Learning and teaching methods

Lectures, exercises and home work

Assessment

Continuing (homework, midterm exams, project work)
Final (written and oral exam)
grading: 5 (fail), 6-10 (pass) (according to the Statute of UL)

Lecturer's references

MIHELIČ, Jurij, DOBRAVEC, Tomaž. SicSim : a simulator of the educational SIC/XE computer for a system-software course. Computer applications in engineering education, ISSN 1061-3773. [Print ed.], Jan. 2015, vol. 23, no. 1, str. 137-146, ilustr. , doi: . [COBISS-SI-ID 10241620]
ČEŠNOVAR, Rok, RISOJEVIĆ, Vladimir, BABIĆ, Zdenka, DOBRAVEC, Tomaž, BULIĆ, Patricio. A GPU implementation of a structural-similarity-based aerial-image classification. The journal of supercomputing, ISSN 0920-8542, Aug. 2013, vol. 65, no. 2, str. 978-996, ilustr. , doi: . [COBISS-SI-ID 9619028]
BULIĆ, Patricio, DOBRAVEC, Tomaž. An approximate method for filtering out data dependencies with a sufficiently large distance between memory references. The journal of supercomputing, ISSN 0920-8542, 2011, vol. 56, no. 2, str. 226-244, ilustr. [COBISS-SI-ID 7412820]
DOBRAVEC, Tomaž, ŽEROVNIK, Janez, ROBIČ, Borut. An optimal message routing algorithm for circulant networks. Journal of Systems Architecture, ISSN 1383-7621. [Print ed.], 2006, vol. 52, no. 5, str. [298]-306, ilustr. [COBISS-SI-ID 5323348]
DOBRAVEC, Tomaž, ROBIČ, Borut. Restricted shortest paths in 2-circulant graphs. Computer communications, ISSN 0140-3664. [Print ed.], March 2009, vol. 32, no. 4, str. 685-690, ilustr. [COBISS-SI-ID 6966356]