Software for communications systems

Subject description

Operating systems. Processes, threads, scheduling. Input-output devices and drivers. Data storage, files, file systems. Inter-process communication and synchronization. Memory and memory management. Databases and transactions. Distributed systems. Virtualization and cloud computing. Software development approaches.

The subject is taught in programs

Objectives and competences

The objective of the course is to provide an overview of the basic principles and concepts for independent design and development of software in communication systems. The course incudes the foundations of modern operating systems, distributed systems, databases, virtualization and software design.

Teaching and learning methods

Lectures for theoretical aspects, laboratory exercises and team work for real-case scenarios and problem solving through project work. Part of the pedagogical process will be carried out with the help of ICT technologies and the possiblities they offer.. Study visits and invited lecturers.

Expected study results

After successful completion of the course, students should be able to:

– describe the basic principles and workings of an operating system

– explain atomicity and its applications in the context of software and database systems

– develop a multi-threaded program with mutually exclusive access to a shared resource

– use multiple mechanisms for inter-process communication in practice

– evaluate the decisions in the design of a distributed computing system

– explain different server virtualization techniques

Basic sources and literature

  1. Modern Operating Systems, Andrew S. Tanenbaum, Prentice Hall; 3rd ed (2007)
  2. Silberschatz A, Galvin P.B., Gagne G., Operating System Concepts, 7th ed, John Wiley &Sons, New York, 2004,
  3. Bic L.F., Shaw A.C, Operating Systems Principles, Prentice Hall, New Jersey, 2003,
  4. Benvenuti C., Understanding LINUX Network Internals, O'Reilly, 2005,
  5. Članki, objavljenih v revijah, npr. / Articles published in magazines, i.e.: IEEE Communications Surveys & Tutorials,   

Stay up to date

University of Ljubljana, Faculty of Electrical Engineering Tržaška cesta 25, 1000 Ljubljana

E: T:  01 4768 411