91精品国产91久久久久久_国产精品二区一区二区aⅴ污介绍_一本久久a久久精品vr综合_亚洲视频一区二区三区

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫(yī)院企業(yè)服務合肥法律

代做SCI 3004、c++/Python程序設計代寫
代做SCI 3004、c++/Python程序設計代寫

時間:2024-09-19  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



COMP SCI 3004/7064 Operating Systems 
Practical 2 – Virtual Memory Simulation 
Aim 
By doing this practical work, you will learn how to implement page replacement algorithms, gain 
experience in creating and evaluating a simple simulator, and develop your skills in scientific 
writing. 
You should work in groups of size 2 or 3. Each group will submit one simulator and one report. 
Deadlines: Code is due Tuesday 5th September 2023. 
 Report due end of week 8 - Friday 15th September. 
 
Introduction 
In chapter 22, we explore a variety of page replacement algorithms for managing virtual memory. 
The choice of a page replacement algorithm is actually quite a complex matter. To make the 
proper choice, we must know something about real applications. How do they access memory? Do 
they generate many page accesses in order? Do they skip around memory randomly? The only 
way to answer these questions is to see what real applications do. 
In this practical, you will evaluate how real applications respond to a variety of page replacement 
algorithms. Of course, modifying a real operating system to use different page replacement 
algorithms is quite difficult, so we will simulate it instead. You will write a program that emulates 
the behaviour of a memory system using a variety of page replacement algorithms. 
Then, you will use memory traces from real applications to evaluate your algorithms properly. A 
main outcome of your work will be a report. The report itself counts for 60% of this assignment. 
Memory Traces 
We provide you with four memory traces to use with your simulator. Each trace is a real recording 
of a running program, taken from the SPEC benchmarks. Real traces are enormously big: billions 
and billions of memory accesses. However, a relatively small trace will be more than enough to 
capture their memory access patterns. Each trace consists of only one million memory accesses 
taken from the beginning of each program. 
Each trace is a series of lines, each listing a hexadecimal memory address followed by R or W to 
indicate a read or a write. For example, gcc.trace trace starts like this: 
0041f7a0 R 
13f5e2c0 R 
05e78**0 R 
00**58a0 R 
31348**0 W 
Each trace is compressed with gzip, so you will have to download each trace and then uncompress 
it with a command like this: 
> gunzip –d gcc.trace.gz 
Simulator Requirements 
Your job is to build a simulator that reads a memory trace and simulates the action of a virtual 
memory system with a single level page table. The current simulator fixes the pages and page 
frames size to 4 KB (4096 bytes). Your program should keep track of what pages are loaded into 
memory. The simulator accepts 4 arguments as follows: 
• the name of the memory trace file to use. 
• the number of page frames in the simulated memory. 
• the page replacement algorithm to use: rand/lru/esc 
• the mode to run: quiet/debug 
If the mode is "debug", the simulator prints out messages displaying the details of each event in 
the trace. The output from “debug” it is simply there to help you develop and test your code. If the mode is "quiet", then the simulator should run silently with no output until the very end, at which 
point it prints out a summary of disk accesses and the page fault rate. 
As it processes each memory event from the trace, the simulator checks to see if the corresponding 
page is loaded. If not, it should choose a page to remove from memory. Of course, if the page to 
be replaced is dirty, it must be saved to disk. Finally, the new page is to be loaded into memory 
from disk, and the page table is updated. As this is just a simulation of the page table, we do not 
actually need to read and write data from disk. When a simulated disk read or disk write must 
occur, we simply increment a counter to keep track of disk reads and writes, respectively. 
Most of the input (reading a trace), simulation counters and output messages has already being 
implemented in the skeleton files provided for you. 
The skeleton reads the parameters, processes the trace files and for each access it generates a page 
read or write request. Your job is to complete the simulation of the memory management unit for 
each replacement policy: 
• rand replaces a page chosen completely at random, 
• lru always replaces the least recently used page 
• clock performs the replacement algorithm described in the textbook section 22.8. 
You should start thinking how you can keep track of what pages are loaded, how to find if the 
page is resident or not, and how to allocate frames to pages. Some short traces (trace1, trace2 and 
trace3) will be used in the testing script and are provided to facilitate local testing of your code. 
Report 
An important component of this practical is a report describing and evaluating the replacement 
algorithms. Your goal is run the simulator to learn as much as you can about the four memory 
traces (swim, bzip, gcc and sixpack). For example, 
How much memory does each traced program actually need? 
Which page replacement algorithm works best when having a low number of frames? 
Does one algorithm work best in all situations? 
Think carefully about how to run your simulator. Do not choose random input values. Instead, 
explore the space of memory sizes intelligently to learn as much as you can about the nature of 
each memory trace. 
Your group report should have the following sections: 
• Introduction: A brief section that describes using your own words the essential problem of 
page replacement you are trying to investigate. Do not copy and paste text from this 
project description. 
• Methods: A description of the set of experiments that you performed. As it is impossible to 
run your simulator with all possible inputs, so you must think carefully about what 
measurements you need. Make sure to run your simulator with an excess of memory, a 
shortage of memory, and memory sizes close to what each process actually needs. 
• Results: A description of the results obtained by running your experiments. Present the 
results using graphs that show the performance of each algorithm on each memory trace 
over a range of available memory sizes (alike figures 22.6 to 22.9 in the textbook). For 
each graph, explain the results and point out any interesting or unusual data points. 
• Conclusions: Summarize what you have learned from the results. 
The group report must be concise, well structured and free of typos and errors. For reference, a 
typical report length should be around 4 to 6 pages, roughly one page for the introduction and 
methods, half to one page per trace (graph and analysis of its results) and half to one page for 
conclusions. 
 
請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp





 

掃一掃在手機打開當前頁
  • 上一篇:COMP3702代做、代寫python設計編程
  • 下一篇:代做48730-32548,、c/c++,Python程序設計代寫
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    2025年10月份更新拼多多改銷助手小象助手多多出評軟件
    2025年10月份更新拼多多改銷助手小象助手多
    有限元分析 CAE仿真分析服務-企業(yè)/產品研發(fā)/客戶要求/設計優(yōu)化
    有限元分析 CAE仿真分析服務-企業(yè)/產品研發(fā)
    急尋熱仿真分析?代做熱仿真服務+熱設計優(yōu)化
    急尋熱仿真分析?代做熱仿真服務+熱設計優(yōu)化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發(fā)動機性能
    挖掘機濾芯提升發(fā)動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現(xiàn)代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現(xiàn)代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
  • 短信驗證碼 目錄網 排行網

    關于我們 | 打賞支持 | 廣告服務 | 聯(lián)系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    91精品国产91久久久久久_国产精品二区一区二区aⅴ污介绍_一本久久a久久精品vr综合_亚洲视频一区二区三区
    亚洲精品一区二区三区福利| 最新国产成人在线观看| 日韩免费高清电影| 日韩视频免费直播| 精品国产百合女同互慰| 亚洲日本乱码在线观看| 婷婷一区二区三区| 日韩精品影音先锋| 久久久久久久久久看片| 亚洲日本丝袜连裤袜办公室| 石原莉奈一区二区三区在线观看| 午夜一级在线看亚洲| 精品国产99国产精品| 亚洲成人av中文| 9色porny自拍视频一区二区| 免费在线亚洲欧美| 久久久99精品久久| 波多野结衣在线aⅴ中文字幕不卡| 99re亚洲国产精品| 欧美三级欧美一级| 亚洲天堂精品在线观看| 国产成人精品免费在线| 久久精品一区二区国产| 久久色.com| 美日韩黄色大片| 日韩欧美一区二区在线视频| 国产精品乱码| 中文字幕中文字幕一区二区| 国产一在线精品一区在线观看| 日韩精品一区二区三区蜜臀| 一卡二卡三卡日韩欧美| 国产成人精品综合在线观看| 国产亚洲精品v| 精品日韩欧美一区二区| 伊人婷婷欧美激情| 99视频热这里只有精品免费| 色国产综合视频| 亚洲乱码国产乱码精品精小说 | 一区二区精品| 中文字幕欧美激情| 美女一区二区三区在线观看| 中文在线一区| 午夜精品免费在线观看| av一区二区不卡| 精品国产123| 91麻豆精品在线观看| 日韩理论片网站| 久久丁香综合五月国产三级网站| 在线成人高清不卡| 99精品热6080yy久久| 免费在线欧美黄色| 亚洲小说欧美激情另类| 91黄色在线观看| 风间由美一区二区av101 | 欧美激情一区二区三区全黄| 91在线视频免费观看| 中文字幕一区二区三区不卡在线| 伊人久久亚洲美女图片| 亚洲最大成人综合| 欧美亚洲动漫制服丝袜| 国产精品videosex极品| 洋洋成人永久网站入口| 久久久精彩视频| 成人免费黄色在线| 一区二区三区国产| 91麻豆精品国产91久久久使用方法| 99精品一区二区三区| 亚洲国产精品v| 久久影院亚洲| 91热门视频在线观看| 亚洲综合色婷婷| 91精品久久久久久久91蜜桃| 91麻豆.com| 国产在线日韩欧美| 又紧又大又爽精品一区二区| 欧美日本视频在线| 在线天堂一区av电影| 97精品国产露脸对白| 亚洲成a人v欧美综合天堂下载| 久久亚洲一区二区三区明星换脸| 欧美日韩1080p| 国产成人一区二区精品非洲| 亚洲乱码精品一二三四区日韩在线| 日韩欧美资源站| 91精品婷婷国产综合久久性色| 在线观看一区欧美| 欧美三区视频| 欧美日韩国产在线一区| 欧美在线视频一区二区三区| 国产成人免费9x9x人网站视频| 国产制服丝袜一区| 国模少妇一区二区三区| 久久se这里有精品| 美女国产一区二区| 免费看黄色91| 免费成人在线视频观看| 九九国产精品视频| 高清国产午夜精品久久久久久| 成人三级伦理片| 成人免费不卡视频| 欧美黄色一级视频| 日韩午夜精品视频| 国产三级一区二区三区| 久久久久久影视| 亚洲免费在线观看视频| 日韩精品欧美精品| 国产丶欧美丶日本不卡视频| 99精品欧美一区二区三区小说 | 欧亚洲嫩模精品一区三区| 欧美午夜不卡视频| 美女一区二区久久| 成人午夜在线视频| 在线国产日韩| 欧美色视频在线观看| 国产夜色精品一区二区av| 亚洲国产精品国自产拍av| 亚洲影院在线观看| 狠狠久久亚洲欧美| 欧美激情五月| 欧美吻胸吃奶大尺度电影| 91精品国产综合久久婷婷香蕉 | 欧美视频一区在线观看| 欧美一级在线观看| 亚洲视频一区在线| 国产在线精品一区二区三区不卡| 欧美日韩妖精视频| 欧美性色黄大片| 亚洲视频在线观看一区| 国内精品伊人久久久久av一坑| 91一区在线观看| 欧美久久久久久久久中文字幕| 日韩一区欧美小说| 91丨九色porny丨蝌蚪| 蜜桃av噜噜一区二区三区| 国产欧美一区二区精品仙草咪| 天天色天天操综合| 亚洲精品一区二区三区蜜桃久| 日韩亚洲欧美中文三级| 蜜桃久久久久久久| 色婷婷精品大视频在线蜜桃视频 | 亚洲成人av一区二区| 亚洲香蕉网站| 国产精品久久久久久一区二区三区| 国产在线视视频有精品| 欧美在线观看视频一区二区| 99精品久久99久久久久| 欧美一级一区二区| 国产一区二区福利| 欧美天堂一区二区三区| 久久99蜜桃精品| 日韩一区二区三区视频在线观看| 九九**精品视频免费播放| 91国在线观看| 国产成人精品免费在线| 亚洲精品在线三区| 久久久久99精品国产片| 午夜性色一区二区三区免费视频| 中文字幕日本不卡| 久久三级福利| 国产精品1024| 久久久精品人体av艺术| kk眼镜猥琐国模调教系列一区二区| 精品视频在线免费| 国产一区二区精品在线观看| 91福利小视频| 26uuu国产一区二区三区| 国产精品99久久久久久有的能看 | 最新欧美精品一区二区三区| 国产精品国产三级国产专区53| 精品国产自在久精品国产| 成人免费毛片a| 久久久精品tv| 伊伊综合在线| 日韩电影在线一区二区三区| 欧美在线高清视频| 成人av电影免费观看| 国产精品久久午夜夜伦鲁鲁| 亚洲大片av| 精品在线免费视频| 国产欧美一区二区三区网站| 丁香婷婷综合激情五月色| 久久精品人人爽人人爽| 国产欧美精品| 国产精品99久久久| 在线观看精品一区| voyeur盗摄精品| 亚洲成人手机在线| 精品国产乱码久久| 亚欧成人精品| 91网上在线视频| 亚洲bt欧美bt精品777| 欧美一激情一区二区三区| 好看不卡的中文字幕| 国产在线精品国自产拍免费| 中文字幕一区二区不卡| 欧美一区二区免费视频| 亚洲精品男同| 99精品久久免费看蜜臀剧情介绍| 成人免费小视频| 精品国产123|