|
|
- 第二次作业
-
- OS concept ver7课本第8章、第九章的习题:
-
- 8.3 Given ?ve memory partitions of 100 KB, 500 KB, 200 KB, 300 KB,and
- 600 KB (in order), how would each of the ?rst-?t, best-?t, and worst-?t
- algorithms place processes of 212 KB, 417 KB, 112 KB, and 426 KB (in
- order)?Which algorithm makes the most ef?cient use of memory?
-
- 8.4 Most systems allow programs to allocate more memory to its address
- space during execution.Data allocated in the heap segments of programs
- is an example of such allocated memory. What is required to support
- dynamic memory allocation in the following schemes:
- a. contiguous-memory allocation
- b. pure segmentation
- c. pure paging
-
- 8.12 Consider the following segment table:
- Segment Base Length
- 0 219 600
- 1 2300 14
- 2 90 100
- 3 1327 580
- 4 1952 96
- What are the physical addresses for the following logical addresses?
- a. 0,430
- b. 1,10
- c. 2,500
- d. 3,400
- e. 4,112
-
- 9.5 Assume we have a demand-paged memory. The page table is held in
- registers. It takes 8 milliseconds to service a page fault if an empty page
- is available or the replaced page is not modi?ed, and 20 milliseconds if
- the replaced page is modi?ed. Memory access time is 100 nanoseconds.
- Assume that the page to be replaced is modi?ed 70 percent of the time.
- What is the maximum acceptable page-fault rate for an effective access
- time of no more than 200 nanoseconds?
-
-
- 9.13 A page-replacement algorithm should minimize the number of page
- faults. We can do this minimization by distributing heavily used pages
- evenly over all of memory, rather than having them compete for a small
- number of page frames.We can associatewith each page frame a counter
- of the number of pages that are associated with that frame. Then, to
- replace a page, we search for the page frame with the smallest counter.
- a. De?ne a page-replacement algorithmusing this basic idea. Specif-
- ically address the problems of (1) what the initial value of the
- counters is, (2) when counters are increased, (3) when counters
- are decreased, and (4) how the page to be replaced is selected.
- b. Howmany page faults occur for your algorithmfor the following
- reference string, for four page frames?
- 1, 2, 3, 4, 5, 3, 4, 1, 6, 7, 8, 7, 8, 9, 7, 8, 9, 5, 4, 5, 4, 2.
- c. What is the minimumnumber of page faults for an optimal page-
- replacement strategy for the reference string in part b with four
- page frames?
-
- 1. 请证明LRU算法不会存在belady现象。
-
- 2. 请证明或详细说明FIFO/CLOCK/Enhanced CLOCK是否有belady现象?
-
-
- 实验相关
- ------------------
-
- 1 lab1的proj1的ucore的代码中是否有使用了绝对地址(编译期间指定的绝对内存地址)?
-
- 2 lab2 的ucore的小os的load addr和link addr分别是多少?
-
- 3 ucore用了哪个数据结构来管理空闲内存,位于内存什么地方,占多少空间?
-
- 4 请考虑在ucore中实现second chance/enhanced clock页替换算法的设计思路。主要描述如何利用相关x86相关硬件、如何设计数据结构,大致要实现哪些函数,函数的大致功能和整体流程。
-
- 5 实现enhanced clock algorithm中,
- IF before clock sweep: (used,dirty) = (1,1), THEN after clock sweep: (used, dirty)=(0,1).
- 如果把上述转换改为:
- IF before clock sweep: (used,dirty) = (1,1), THEN after clock sweep: (used, dirty)=(1,0).
- 是否可行?
-
- 6 在clock算法实现中,pte中的uesd bit位是否可以让os来设置1 or 0 ? 为什么?
-
- 7 在enhanced clock算法中的dirty bit位是否可以让os来设置1 or 0 ? 为什么?
-
- 8 如果在ucore中实现精确的LRU算法,如何设计?需要硬件和OS分别完成什么事情?
-
- 9 如果在ucore中实现工作集页替换算法和缺页频率替换算法,如何设计?
-
-
|