| Title: | Operating Systems |
|---|
| Code: | IOS |
|---|
| Ac.Year: | 2005/2006 |
|---|
| Term: | Summer |
|---|
| Study plans: | |
|---|
| Language: | Czech |
|---|
| Public info: | http://www.fit.vutbr.cz/study/courses/IOS/public/ |
|---|
| Credits: | 5 |
|---|
| Completion: | accreditation+exam (written) |
|---|
Type of instruction: | | Hour/sem | Lectures | Sem. Exercises | Lab. exercises | Comp. exercises | Other |
|---|
| Hours: | 39 | 0 | 0 | 0 | 13 |
|---|
| | Examination | Tests | Exercises | Laboratories | Other |
|---|
| Points: | 60 | 10 | 0 | 0 | 30 |
|---|
|
|---|
| Guarantee: | Vojnar Tomáš, prof. Ing., Ph.D., DITS |
|---|
| Lecturer: | Vojnar Tomáš, prof. Ing., Ph.D., DITS |
| Instructor: | Kironský Elöd, Ing., DITS Kočí Radek, Ing., Ph.D., DITS Novosad Petr, Ing., DITS Polášek Petr, Ing., DITS |
|---|
| Faculty: | Faculty of Information Technology BUT |
|---|
| Department: | Department of Intelligent Systems FIT BUT |
|---|
| Prerequisites: | |
|---|
| | | Learning objectives: |
|---|
The goal is to acquaint students with the principles of operating
systems in general and with the basic concepts of the UNIX operating
system. | | Description: |
|---|
The concept of an operating system (OS) as a part of software of a
computer system. Architectures of operating systems, a classification
of operating systems. An overview of the contemporary operating
systems. UNIX: The kernel of the OS, its structure, calling services of
the kernel. The user interface of the UNIX OS, graphical and text-based
interfaces, command languages. Context switching, multitasking. Basic
principles of the implementation of the UNIX OS. File systems.
Management of processes, virtual memory. Basic principles of computer
networks, Internet, TCP/IP. Administration and security of operating
systems. | | Knowledge and skills required for the course: |
|---|
Basic knowledge of algorithmics (basic data and control structures,
linked lists, queues, stacks, etc.), basic knowledge of the C language,
basic knowledge of the computer architecture.
| | Learning outcomes and competences: |
|---|
Students are acquainted with the basic principles of operating systems
(with emphasis on the UNIX operating system) and they understand the
influence of operating systems upon the operation of complex computing
systems. Students are able to exploit scripts for solving various tasks
in a UNIX-based environment. | | Syllabus of lectures: |
|---|
- Introduction. Evolution of computers and operating systems
(OS). Requirements laid on OS, classification of OS, standards. The
basic terminology and the general structure of OS.
- The UNIX operating system. The history and the most
important development branches. The basic principles and structure of
UNIX. The structure of the UNIX kernel, its interface and the different
forms of communicating with the kernel.
- UNIX shell. Basic commands, programs, scripts. Special
symbols. Input/output redirection, pipes, background processes,
sub-shell. Variables, control structures.
- A basic introduction to programming in UNIX. Languages,
compilers, principles of linking programs, dynamically linked
libraries. Principles of the X-Window graphical user interface.
- UNIX file systems. The physical and logical structure of disks. Types of files, i-nodes, storing files on a disk.
- Access rights to files in UNIX, users and groups, the suid
and sgid attributes, the typical structure of directories in a UNIX
system.
- Input and output. The corresponding kernel services. Data
structures and algorithms used by the input/output subsystem of the
kernel.
- Management of processes. Loading the system, the init
process. Fork, exec, exit, and wait calls. States of processes, the
scheduler.
- Memory management. Address spaces, address translation, memory pages.
- Basic theoretical background. Mutual exclusion, deadlocks,
synchronization and communication of processes.
- Computer networks, Internet, basic protocols and services.
- An overview and comparison of various operating systems. New
trends in the development of operating systems, microkernels,
multimedia, etc.
- Security issues and operating systems. An overview of
problems arising in the given area, the fundamental principles of OS
security. Security classes.
| | Syllabus - others, projects and individual work of students: |
|---|
- Two individual home assignments devoted to creating scripts by means of UNIX shell and the standard utilities of UNIX.
| | Fundamental literature: |
|---|
- Glass, G., Ables, R.K.: Unix For Programmers And Users, Second Edition. Prentice Hall, 1999.
- Milenkovic, M.: Operating Systems: Concepts and Design, Second Edition. McGraw-Hill, New York, 1992.
- Bach, M.J.: The Design of the Unix Operating System. Prentice Hall, 1990.
- Kerninghan, B.W., Pike, R.: The Unix Programming Environment. Prentice Hall, 1984.
- Skočovský, L.: Principy a problémy operačního systému UNIX, 1. vydání. Science, Veletiny 1993.
| | Study literature: |
|---|
- Glass, G., Ables, R.K.: Unix For Programmers And Users, Second Edition. Prentice Hall, 1999.
- Milenkovic, M.: Operating Systems: Concepts and Design, Second Edition. McGraw-Hill, New York, 1992.
- Bach, M.J.: The Design of the Unix Operating System. Prentice Hall, 1990.
- Kerninghan, B.W., Pike, R.: The Unix Programming Environment. Prentice Hall, 1984.
- Materials presented within the lectures and made accessible via the Internet.
- Materials freely accessible on the Internet.
| | Controlled instruction: |
|---|
- Solving two individual home assignments.
| | Progress assessment: |
|---|
- Evaluation of the two home assignments individually solved by the students.
| | Exam prerequisites: |
|---|
At least 50% of the total points that a student can get from the half-semester test and the home assignments.
| | |
|