SemesterSpring Semester, 2025
DepartmentJunior Class A, Department of Management Information Systems Junior Class B, Department of Management Information Systems Senior Class A, Department of Management Information Systems Senior Class B, Department of Management Information Systems
Course NameOperating Systems
InstructorCHUANG FENG-YUAN
Credit3.0
Course TypeElective
Prerequisite
Course Objective
Course Description
Course Schedule























































































































Week





Topic



Content

Activity



1

◆ Introduction


 

 


2 ◆ Operating-System Structures - I    
3

◆ Operating-System Structures - II



◆ Linux Concepts and Case Studies



Linux:




  • Installation

  • Basic commands

  • File permissions

  • Editors



 


4

◆ Processes - I



◆ Linux Concepts and Case Studies



Linux:




  • File system management

  • Process management

  • Compiler and linker


Individual Assignment 1
5

◆ Processes - II


   
6 ◆ Threads and Concurrency - I    
7

◆ Threads and Concurrency - II



◆ Programming Concepts



Programming:




  • Call by value

  • Call by reference

  • Call by address



 


8

◆ Understanding OS Services in Action: Deploying a WordPress Server on Ubuntu



Linux:




  • Apache Web Server

  • MySQL Database Server

  • PHP

  • WordPress

  • Shell Scripts



Individual Assignment 2


9 N/A   Flexible Learning (No Class)
10 ◆ CPU Scheduling    
11 ◆ Synchronization Tools

Tools:




  • Multex locks

  • Semaphores

  • Monitors


 
12

◆ Synchronization Examples and Deadlocks



◆ Multithread Programming



Programming:




  • Systems simulation

  • Dining Philosophers (Java)


Individual Assignment 3
13

◆ Memory - I


 

 


14 N/A   Flexible Learning (No Class)
15

◆ Memory - II


 

 


16 ◆ I/O and File Systems    
17 Team Project Presentation 1  

 


18 Team Project Presentation 2  

 



Teaching Methods
Teaching Assistant
Requirement/Grading



Course evaluation:




  • Individual assignments: 40% (Late submission can only be accepted within two weeks.)

  • Team project presentation: 60%

    • Instructor's evaluation: 20%

    • Intra-group peer evaluation: 20%

    • Inter-group peer evaluation: 20%







Team composition:




  • Group size: 3 to 5 members.

  • Each team will develop and pitch a business or academic idea related to operating systems.



Essential elements for a successful pitch:






  • Problem definition: Clearly outline the problem you are addressing.

  • Target audience: Define the audience for your solution (e.g., business, government, or civil society).

  • Importance of the problem: Provide evidence that the problem is significant.

  • Solution justification: Explain why Linux (or your selected operating system) is a suitable or advantageous solution.

  • Technical details and proof of concept: Include relevant technical information and, if possible, a proof of concept.

  • Potential impact: Highlight the expected impact on business and/or society.





Evaluation criteria for the team project presentation and report:






  • Novelty: 25%

  • Technical depth: 25%

  • Business and/or social impact: 25%

  • Presentation skills: 25%





Textbook & Reference

Required Readings




  1. Operating System Concepts (10th Edition), by Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne.

  2. GitHub of this course



Urls about Course
Attachment