Operating Systems

ΥΠ12 - Operating Systems

General Information

School: Digital Technology

Department: Informatics and Telematics

Level: Undergraduate

Course Title: Operating Systems

Course id: ΥΠ12

Type: Core Course 

Semester: 3

Teaching and Examination Language: Greek

Is the course offered in Erasmus: Yes

Course web-page: http://eclass.hua.gr/courses/DIT136/

Activities

Lectures (Theory): 3,0

Lab lectures: 1,5

ECTS credits: 7,0

Learning Outcomes

The course aims at familiarizing students with the basic operations and functionality of an Operating System, algorithmic problems regarding resource sharing and contention and allows them to act as system administrators.
The laboratory part aims at preparing students to efficiently work and program using system calls and shell scripting in a Unix environment.

General Skills



Independent work
Promoting free, creative and deductive thought
Decision making

Course Content

Theory:
Operating Systems categories
processes and threads
CPU scheduling
interprocess communication - mutexes, deadlocks - techniques for deadlock avoidance and prevention
memory management – virtual memory, paging and page replacement algorithms
filesystems and protection mechanisms
I/O devices management
UNIX operating system case study
Ms Windows operating system case study.
Laboratory:
Introduction to UNIX
filesystem management
redirections
pipes
regular expressions
process management
filesystem permissions
environmental variables
shell scripts
UNIX system calls programming in C
socket programming

Learning and Teaching Methods - Evaluation

Teaching methods: face-to-face

Use of ICT: 

Course e-class, google meet, Youtube channel,

Course Organization

 

Activity

Semester work load

Lectures

39,0

Lab exercises

19,5

Individual of group projects

40,0

Lab report preparation

10,0

Thesis 

 

Independent Study

66,5

Total

175

Assessment

The final grade is computed as follows: written examination 60%, individual programming projects 40%. To pass the course, a students should have a passing grade (at least) in BOTH the written exams and the projects individually.

Literature

Theory
Operating Systems Design and Implementation by Andrew S Tanenbaum, Albert S Woodhull, Prentice Hall
Operating System Concepts by Abraham Silberschatz,Peter Baer Galvin, Greg Gagne, Wiley

Lab
M. Rochkind, “Advanced UNIX Programming”, Addison-Wesley. 2000
Brian W. Kernighan, Rob Pike. “The Unix programming environment, Prentice Hall, 1984
Additional Reading
Design of the UNIX Operating System των Maurice J. Bach,  Prentice Hall eds
UNIX: The Complete Reference, Second Edition των Kenneth H. Rosen, Douglas A. Host, Rachel Klee, Richard R. Rosinski, McGraw-Hill eds
Additional teaching material is also provided through eclass platform (“Operating systems” Electronic Course)

 

Elsevier Journal of Systems Architecture, ACM Transactions on Computer Systems