operating-systems-lecture
operating-systems-lecture copied to clipboard
Workshops and labs for operating system lecture
operating-systems-lecture
Workshops and labs for ITESM operating system lecture
This is a template for a operating system lectures ITESM GDL in order to increase the level of knowledge on the undergraduate students of computer science careers. This is plan to be deliverable in a period of time of 4 to 6 months. It is adjustable in time and order; however the expectations and basic topics should keep the essence of the plan.
Agenda:
-
OS Architecture
- Introduction
- What is an Operating Systems
- https://drive.google.com/file/d/0B7iKrGdVkDhIOElQYnhRU09TWXc/view?usp=sharing&resourcekey=0-RG3mVzZQO7m7AXlEkKZMyg
- Operating System Structure
- https://drive.google.com/file/d/0B7iKrGdVkDhIZVB4RkY4MHdYd2M/view?usp=sharing&resourcekey=0-SqgAM1Wl5GcodVGqPjD8Ww
- What is an Operating Systems
- Process Management
- Processes
- https://drive.google.com/file/d/0B7iKrGdVkDhIR2VORXdGLVZGVVU/view?usp=sharing&resourcekey=0-DM_10or77vxbem9C1p3abg
- Threads
- https://drive.google.com/file/d/0B7iKrGdVkDhIN1A2Y1AwbkpIeHM/view?usp=sharing
- CPU Scheduling
- https://drive.google.com/file/d/0B7iKrGdVkDhIZkRWVHZ3M2pYOUU/view
- Process Synchronization
- https://drive.google.com/open?id=0B7iKrGdVkDhIbDg1VHY4aUNkZzg
- Deadlocks
- Processes
- Memory
- Main Memory
- Virtual Memory
- https://drive.google.com/file/d/0B7iKrGdVkDhIRmZPSDVySXB0cjQ/view?usp=sharing
- Storage Management
- File System Interface
- File System Implementation
- Mass Storage Structure
- I/O Systems
- Introduction
-
Linux (Kernel Space)
- Elements on the Kernel
- Processes, Task Switching and Scheduling
- Address Spaces and Privilege Levels
- Introduction Virtual and Physical Address Spaces
- Page Tables
- Allocation of Physical Memory
- Slab Cache
- Linux Device Drivers
- https://drive.google.com/file/d/0B7iKrGdVkDhIdjhiZ3RuYnVQbk0/view?usp=sharing
- Kind of Drivers
- Network Drivers
- Block Drivers
- Character Drivers
- IOCTLs
- Driver entry points for IOCTLs
- Locked and Lockless IOCTLs
- Defining IOCTLs
- Unified Device Model and sysfs
- Transfer between user and kernel space
- Timing
- Jiffies
- Inserting delays
- Dynamic Timers
- Timer Implementation
- High Resolution Timers
- Memory management and allocation
- Kmalloc
- Vmalloc
- Bootmem
- Power Management
- ACPI and APM
- Debugging techniques
- Kernel Debuggers
- Linux boot process
- The Linux x86 boot protocol
- How is the kernel built?
- Loading the kernel – bzImage boot protocol
- The start_kernel() function
- Elements on the Kernel
Oftopic Trainings ( in case you need them )
-
C basic trining:
- https://www.linkedin.com/learning/advanced-c-programming/
-
Git training
- https://drive.google.com/file/d/0B7iKrGdVkDhINERiQnppOU5IVVk/view?usp=sharing
-
Bash Trainings:
- https://drive.google.com/file/d/0B7iKrGdVkDhILU9QRWllWmNKM2M/view?usp=sharing
- https://drive.google.com/file/d/0B7iKrGdVkDhIWGVhVzhtTlZjWGc/view?usp=sharing
- https://drive.google.com/file/d/0B7iKrGdVkDhIRkVPSlNPdkdSS2c/view?usp=sharing
- https://drive.google.com/file/d/0B7iKrGdVkDhIbkdKYWI1R19oMzQ/view?usp=sharing
-
GCC for performance Trainings:
- https://drive.google.com/open?id=0B7iKrGdVkDhIUzZTVTduczJrQTg
Pondaration:
-
35% First Term
- 15% Weekly Quizzes
- 5% Reading Summaries
- 15% Labs
-
35% Second Term
- 15% Weekly Quizzes
- 5% Reading Summaries
- 15% Labs
-
30% Final Exam ( if student decides to do final project it is = 10% and final exam 20 % )
Bibliography: Mian Book : Operating System Concepts, Abraham Silberschatz, Peter B. Galvin
Other good books :
- Understanding the Linux Kernel, 3rd Edition. Daniel P. Bovet and Marco Cesati. Copyright © 2005 O'Reilly Media, Inc.
- Advanced Linux Programming. Mark Mitchell, Jeffrey Oldham and Alex Samuel. New Riders Publishing, 2001
- Professional Linux Kernel Architecture, Wolfgang Mauerer
- Operating Systems: Three Easy Pieces https://pages.cs.wisc.edu/~remzi/OSTEP/
Q/A Contact point:
- https://groups.google.com/forum/#!forum/oslecture-itesm-gdl