Anatomy of the Linux Kernel - Excercises
Pre-reading excercises
- What are the most popular operating systems?
- Windows, Linux, Mac OS
- What are the advantages of Linux?
- GPL license (free to use)
- stability
- security
- What are the disadvantages of Linux?
- difficult in use
- some software isn’t available in a Linux version
Comprehension questions
- Name a few of the earliest operating systems.
- GMOS, FMS.
- Who created MINIX?
- Andrew Tanenbaum
- How many lines of code does the Linux kernel have now?
- over 6 million
- What are the advantages of Linux adoption of the GPL?
- protection from commercial exploitation
- benefits from the user-space development
- various shell support
- Name the three gross levels of the Linux kernel.
- system call interface
- kernel code
- architecture-dependant code (BSP)
- What are the major components of the Linux kernel?
- System Call Interface
- Process Management
- Memory Management
- Virtual File System
- Network Stack
- Arch
- Device Drivers
- Describe in a few words what process management does?
- Process management is focused on the execution of processes. The kernel provides an application program interface through the SCI to create a new process, stop a process or communicate and synchronize between them. There is also a need to share the CPU between the active threads in the process management.
- What could you do if you have Linux and you want to run a Windows program?
- find its Linux equivalent
- virtualize Microsoft Windows
- install Windows as a second system
Possible topics for discussion
- Which operating system, Windows or Linux, is better and why? What is your opinion?
- Which operating system architecture is better: one with a number of distinct subsystems or one with a single microkernel?
- Is it better to build small kernels which are easy to understand or large ones with all the necessary functions?
Possible difficulties
The article can be hard to understand because of the large amount of words and phrases from the area of IT.
See also: