Manage Your Tasks in Operating System Cheng-Han Du
What We’re Gonna Talking About Multitasking has been a general technology in modern operating system. To take a closer look, we have to know some basic operations. After that, we will be more clear about their processing scheme and hence do some modifications.
Before We Start… Please take a look at the slides of OS C. (functions).
Process “An executing instance of a program is called a process” In some popular operating system, every process has a unique process ID (PID).
MMU Memory Management Unit MMU is a computer hardware component responsible for handling accesses to memory requested by CPU. Virtual memory Paging
TLB Translation Lookaside Buffer TLB is used to improve translation performance of virtual memory. TLB is placed in CPU cache. Hence, MMU can access it in very high speed.
Page Table Page table holds mapping data of virtual memory and physical memory. Page table is handled in virtual memory. Thus, paging is usually very slow.
Multitasking Using multiple processes or threads to execute your program. Process: Memory duplication Thread: Lightweight Detailed issue Resource sharing Race condition
Multitasking If you have multiple CPUs or a multi-core CPU… Several tasks can be processed simutaneously. You may execute a multithread-supported program for higher computation performance. However, they are still under control of process scheduler.
Process Control Number of processes can be very large. Process control is required to handle each of them properly. In Unix: Swapper Pagedaemon
Process Control Resource access and overwriting Deadlock Semaphore ……
Manage Your Tasks In Windows XP and Vista: In Linux: “taskmgr” “top” “htop” Some GUI-based system monitor
What Will You See in a Heavily Loaded System?
How to End a Process Manually? In Windows: Simply select a process and terminate it in task manager. In Unix: The same or do it in command line. Some process is essential to general system operation. Do not terminate them if you are not quite sure.