Operating systems and networks
- Department of Cybernetics
The goal of this course is to introduce basic concepts and principles of operating systems (OS), like processes and threads, their scheduling, mutual communication and synchronization, time-dependent errors and deadlocks. Attention is also paid to memory management, virtual memory, management of secondary storages, file-systems and data security. The second part of the course is focused at distributed systems (DS) principles and technologies. DS communication media and topologies are explained and the basics of Internet including specific protocols are treated as typical DS applications.
- Syllabus of lectures:
1.Basic concepts: operating system (OS) and its kernel, hardware dependency, processes, threads, scheduling. OS types.
2.Compiling and linking, libraries, OS services and calls, dynamic libraries and run-time linking
3.Implementation and life-cycle of processes and threads. Scheduling algorithms. Real-time OSes and scheduling in them.
4.Communication among processes and threads, critical sections, time-dependent errors, synchonization tools. Classical synchronization problems and their solution.
5.Deadlocks: definition, conditions, solution possibilities
6.Memory management: Basic techniques. Virtual memory, swapping, paging, segmentation, page-replacement algorithms.
7.File-systems, organizing data on the secondary storage, principles, standard solutions, data security.
8.Distributed computing, client-server architectures. OS components supporting computer networks (sockets) and their programming.
9. Introduction to computer networks, basic definitions, ISO/OSI model and its layers functionality
10.Local-area networks, active componets, physical addressing
11.Interconnecting networks, internetworking, addressing, routing principles
12.Protocols and technologies in the Internet. Protocols for network management
13.DS applications (deeper insight into some common TCP/IP protocols)
14.Wrap-up, spare time.
- Syllabus of tutorials:
1.Introdution, exercise organization, 1st task assignment
2.Brief OS overview, introduction to scripting languages
3.Advanced script programming, regular expressions
4.Exercising the scripting languages, 1st task delivery
5.2nd task assignment. Processes & threads, resource sharing - practical examples
6.Interprocess communication, deadlocks
8.2nd task delivery and results presentation
9.3rd task assignment, network configurations
10.Tools for network management
11.Firewalls, configuration principles
12.Individual work in a computer room
13.Presentation of 3rd task results
14.Conclusion, Q&A, spare time
- Study Objective:
- Study materials:
1. Silberschatz A., Galvin P. B., Gagne G.: Operating System Concepts. J. Willey, 2005
2. Tanenbaum A. S.: Modern Operating Systems. Prenice Hall, 2001
3. Halsall, F.: Data Communications, Computer Networks and Open Systems, Adison Wesley 1996
4. Comer D. E.: Internetworking with TCP/IP: Principles, Protocols and Architectures. Prentice Hall, 2005
- Further information:
- No time-table has been prepared for this course
- The course is a part of the following study plans: