文件名称:ucore-lab5
介绍说明--下载内容均来自于网络,请自行研究使用
Ucore是一个很小的适于学习的操作系统,此“麻雀”包含虚存管理、进程管理、处理器调度、同步互斥、进程间通信、文件系统等主要内核功能,总的内核代码量(C+asm)不会超过5K行。充分体现了“小而全”的指导思想。
这是ucore的实验5:进程同步。实验目的:熟悉ucore中的进程同步机制,了解操作系统为进程同步提供的底层支持;在ucore中实现信号量(semaphore)机制;理解管程机制,在ucore中增加对条件变量(condition variable)的支持;了解经典进程同步问题,并使用现有同步机制解决进程同步问题。-Ucore is a small operating system for learning, the " Sparrow" contains the virtual memory management, process management, processor scheduling, synchronization mutually exclusive, inter-process communication, file system and other major kernel functions, the total amount of kernel code ( C+ asm) no more than 5K lines. Fully embodies the " small" the guiding ideology. This is ucore experiment 5: the process of synchronization. Purpose: familiar ucore in the process of synchronization mechanisms, understanding of the operating system to provide underlying support for process synchronization in ucore implement semaphore (semaphore) mechanism understand the management process mechanism, the increase in ucore condition variable (condition variable) of support understand the classical process synchronization, and synchronization mechanisms to use existing settlement process synchronization problem.
这是ucore的实验5:进程同步。实验目的:熟悉ucore中的进程同步机制,了解操作系统为进程同步提供的底层支持;在ucore中实现信号量(semaphore)机制;理解管程机制,在ucore中增加对条件变量(condition variable)的支持;了解经典进程同步问题,并使用现有同步机制解决进程同步问题。-Ucore is a small operating system for learning, the " Sparrow" contains the virtual memory management, process management, processor scheduling, synchronization mutually exclusive, inter-process communication, file system and other major kernel functions, the total amount of kernel code ( C+ asm) no more than 5K lines. Fully embodies the " small" the guiding ideology. This is ucore experiment 5: the process of synchronization. Purpose: familiar ucore in the process of synchronization mechanisms, understanding of the operating system to provide underlying support for process synchronization in ucore implement semaphore (semaphore) mechanism understand the management process mechanism, the increase in ucore condition variable (condition variable) of support understand the classical process synchronization, and synchronization mechanisms to use existing settlement process synchronization problem.
(系统自动生成,下载前可以参看下载内容)
下载文件列表
ucore-lab5\20110518-lab5-v2.pdf
..........\lab5_report.txt
..........\proj16\boot\asm.h
..........\......\....\bootasm.S
..........\......\....\bootmain.c
..........\......\init
..........\......\kern\debug\assert.h
..........\......\....\.....\kdebug.c
..........\......\....\.....\kdebug.h
..........\......\....\.....\monitor.c
..........\......\....\.....\monitor.h
..........\......\....\.....\panic.c
..........\......\....\.....\stab.h
..........\......\....\.river\clock.c
..........\......\....\......\clock.h
..........\......\....\......\console.c
..........\......\....\......\console.h
..........\......\....\......\ide.c
..........\......\....\......\ide.h
..........\......\....\......\intr.c
..........\......\....\......\intr.h
..........\......\....\......\kbdreg.h
..........\......\....\......\picirq.c
..........\......\....\......\picirq.h
..........\......\....\fs\fs.h
..........\......\....\..\swapfs.c
..........\......\....\..\swapfs.h
..........\......\....\init\entry.S
..........\......\....\....\init.c
..........\......\....\libs\rb_tree.c
..........\......\....\....\rb_tree.h
..........\......\....\....\readline.c
..........\......\....\....\stdio.c
..........\......\....\mm\buddy_pmm.c
..........\......\....\..\buddy_pmm.h
..........\......\....\..\memlayout.h
..........\......\....\..\mmu.h
..........\......\....\..\pmm.c
..........\......\....\..\pmm.h
..........\......\....\..\shmem.c
..........\......\....\..\shmem.h
..........\......\....\..\slab.c
..........\......\....\..\slab.h
..........\......\....\..\swap.c
..........\......\....\..\swap.h
..........\......\....\..\vmm.c
..........\......\....\..\vmm.h
..........\......\....\process\entry.S
..........\......\....\.......\proc.c
..........\......\....\.......\proc.h
..........\......\....\.......\switch.S
..........\......\....\schedule\sched.c
..........\......\....\........\sched.h
..........\......\....\........\sched_MLFQ.c
..........\......\....\........\sched_MLFQ.h
..........\......\....\........\sched_RR.c
..........\......\....\........\sched_RR.h
..........\......\....\.ync\condition.h
..........\......\....\....\event.c
..........\......\....\....\event.h
..........\......\....\....\ipc.h
..........\......\....\....\klock.h
..........\......\....\....\mbox.c
..........\......\....\....\mbox.h
..........\......\....\....\sem.c
..........\......\....\....\sem.h
..........\......\....\....\sync.c
..........\......\....\....\sync.h
..........\......\....\....\wait.c
..........\......\....\....\wait.h
..........\......\....\..scall\syscall.c
..........\......\....\.......\syscall.h
..........\......\....\trap\trap.c
..........\......\....\....\trap.h
..........\......\....\....\trapentry.S
..........\......\....\....\vectors.S
..........\......\libs\atomic.h
..........\......\....\elf.h
..........\......\....\error.h
..........\......\....\hash.c
..........\......\....\list.h
..........\......\....\mboxbuf.h
..........\......\....\printfmt.c
..........\......\....\rand.c
..........\......\....\stdarg.h
..........\......\....\stdio.h
..........\......\....\stdlib.h
..........\......\....\string.c
..........\......\....\string.h
..........\......\....\types.h
..........\......\....\unistd.h
..........\......\....\x86.h
..........\......\Makefile
..........\......\oslab5_proj16.IAB
..........\......\oslab5_proj16.IAD
..........\......\oslab5_proj16.IMB
..........\......\oslab5_proj16.IMD
..........\......\oslab5_proj16.PFI
..........\......\oslab5_proj16.PO
..........\......\oslab5_proj16.PR
..........\lab5_report.txt
..........\proj16\boot\asm.h
..........\......\....\bootasm.S
..........\......\....\bootmain.c
..........\......\init
..........\......\kern\debug\assert.h
..........\......\....\.....\kdebug.c
..........\......\....\.....\kdebug.h
..........\......\....\.....\monitor.c
..........\......\....\.....\monitor.h
..........\......\....\.....\panic.c
..........\......\....\.....\stab.h
..........\......\....\.river\clock.c
..........\......\....\......\clock.h
..........\......\....\......\console.c
..........\......\....\......\console.h
..........\......\....\......\ide.c
..........\......\....\......\ide.h
..........\......\....\......\intr.c
..........\......\....\......\intr.h
..........\......\....\......\kbdreg.h
..........\......\....\......\picirq.c
..........\......\....\......\picirq.h
..........\......\....\fs\fs.h
..........\......\....\..\swapfs.c
..........\......\....\..\swapfs.h
..........\......\....\init\entry.S
..........\......\....\....\init.c
..........\......\....\libs\rb_tree.c
..........\......\....\....\rb_tree.h
..........\......\....\....\readline.c
..........\......\....\....\stdio.c
..........\......\....\mm\buddy_pmm.c
..........\......\....\..\buddy_pmm.h
..........\......\....\..\memlayout.h
..........\......\....\..\mmu.h
..........\......\....\..\pmm.c
..........\......\....\..\pmm.h
..........\......\....\..\shmem.c
..........\......\....\..\shmem.h
..........\......\....\..\slab.c
..........\......\....\..\slab.h
..........\......\....\..\swap.c
..........\......\....\..\swap.h
..........\......\....\..\vmm.c
..........\......\....\..\vmm.h
..........\......\....\process\entry.S
..........\......\....\.......\proc.c
..........\......\....\.......\proc.h
..........\......\....\.......\switch.S
..........\......\....\schedule\sched.c
..........\......\....\........\sched.h
..........\......\....\........\sched_MLFQ.c
..........\......\....\........\sched_MLFQ.h
..........\......\....\........\sched_RR.c
..........\......\....\........\sched_RR.h
..........\......\....\.ync\condition.h
..........\......\....\....\event.c
..........\......\....\....\event.h
..........\......\....\....\ipc.h
..........\......\....\....\klock.h
..........\......\....\....\mbox.c
..........\......\....\....\mbox.h
..........\......\....\....\sem.c
..........\......\....\....\sem.h
..........\......\....\....\sync.c
..........\......\....\....\sync.h
..........\......\....\....\wait.c
..........\......\....\....\wait.h
..........\......\....\..scall\syscall.c
..........\......\....\.......\syscall.h
..........\......\....\trap\trap.c
..........\......\....\....\trap.h
..........\......\....\....\trapentry.S
..........\......\....\....\vectors.S
..........\......\libs\atomic.h
..........\......\....\elf.h
..........\......\....\error.h
..........\......\....\hash.c
..........\......\....\list.h
..........\......\....\mboxbuf.h
..........\......\....\printfmt.c
..........\......\....\rand.c
..........\......\....\stdarg.h
..........\......\....\stdio.h
..........\......\....\stdlib.h
..........\......\....\string.c
..........\......\....\string.h
..........\......\....\types.h
..........\......\....\unistd.h
..........\......\....\x86.h
..........\......\Makefile
..........\......\oslab5_proj16.IAB
..........\......\oslab5_proj16.IAD
..........\......\oslab5_proj16.IMB
..........\......\oslab5_proj16.IMD
..........\......\oslab5_proj16.PFI
..........\......\oslab5_proj16.PO
..........\......\oslab5_proj16.PR