2020 Faculty Courses School of Computing Undergraduate major in Mathematical and Computing Science
Operating Systems
- Academic unit or major
- Undergraduate major in Mathematical and Computing Science
- Instructor(s)
- Kazuyuki Shudo / Toshio Endo
- Class Format
- Lecture (Zoom)
- Media-enhanced courses
- -
- Day of week/Period
(Classrooms) - 5-6 Tue (W834) / 5-6 Fri (W834)
- Class
- -
- Course Code
- MCS.T314
- Number of credits
- 200
- Course offered
- 2020
- Offered quarter
- 2Q
- Syllabus updated
- Jul 10, 2025
- Language
- Japanese
Syllabus
Course overview and goals
Operating systems are fundamental software that give an abstract of and manage resources of computer hardware. This course studies concepts, ideas and functions of operating systems. Practical exercises lead you to practical understandings.
Course description and aims
This course lectures you on the following topics. You know how to make efficient use of computer hardware by understanding how operating systems interface application software with hardware.
- Booting up of operating systems
- Input/output
- File systems
- Process management: loading and starting up of processes
- Process management: concurrent processing, scheduling
- Concurrency Control (Synchronization)
- Memory management
- Virtualization
- Networking
- Security
Keywords
Operating systems, hardware abstraction, resources management
Competencies
- Specialist skills
- Intercultural skills
- Communication skills
- Critical thinking skills
- Practical and/or problem-solving skills
Class flow
In lecture time, the course lectures on the topics and explains exercises.
You have an exercise per one or two lectures as homework.
Course schedule/Objectives
Course schedule | Objectives | |
---|---|---|
Class 1 | Operating Systems | |
Class 2 | C language basics, and memory management by OS and compiler | Memory use by CPU and compiler. |
Class 3 | Booting up | Booting up process of operating systems. |
Class 4 | Input / output | Input / output with busy wait and interrupts. |
Class 5 | File systems | Two types of file system structures: linked allocation and indexed allocation. |
Class 6 | Loading and starting up of processes: compilation, linking and loading | |
Class 7 | Loading and starting up of processes: system call | Program loading, starting up, and system call. |
Class 8 | Concurrent processing and scheduling: multi threading and context switch | Context switch. |
Class 9 | Concurrent processing and scheduling (cont.): process scheduling | |
Class 10 | Concurrency control: pessimistic and optimistic methods | Race conditions and its handling. |
Class 11 | Concurrency control (cont.): software, hadware and language constructions | |
Class 12 | Memory management: paging | Paging. |
Class 13 | Memory management (cont.): virtual memory | |
Class 14 | Virtualization |
Study advice (preparation and review)
To enhance effective learning, students are encouraged to spend approximately 100 minutes preparing for class and another 100 minutes reviewing class content afterwards (including assignments) for each class.
They should do so by referring to textbooks and other course material.
Textbook(s)
None.
Reference books, course materials, etc.
Silberschatz and Galvin: Operating System Concepts, 9th ed., John Wiley & Sons, 2012.
Evaluation methods and criteria
Based on answers to exercises.
Related courses
- MCS.T233 : Computer Systems
Prerequisites
None.