美女扒开腿免费视频_蜜桃传媒一区二区亚洲av_先锋影音av在线_少妇一级淫片免费放播放_日本泡妞xxxx免费视频软件_一色道久久88加勒比一_熟女少妇一区二区三区_老司机免费视频_潘金莲一级黄色片_精品国产精品国产精品_黑人巨大猛交丰满少妇

代寫GA.2250、Python/Java程序語言代做

時間:2024-08-14  來源:  作者: 我要糾錯



Programming Assignment #4 (Lab 4): IO Scheduling Professor Hubertus Franke 
Class CSCI-GA.2250-001 Summer 2024 
 
In this lab you will implement and simulate the scheduling and optimization of I/O operations for a hard disk. Applications 
submit their block IO requests (bio) to the IO subsystem [ Block Layer ] (potentially via the filesystem), where they are 
maintained in an IO-queue until the disk device is ready for servicing another request. The IO-scheduler then selects a request 
from the IO-queue and submits it to the disk device. This selection is commonly known as the strategy() routine in 
operating systems and shown in the figure below. On completion, another request can be taken from the IO-queue and 
submitted to the disk. The scheduling policies will allow for some optimization as to reduce disk head movement or overall 
wait time in the system. 
 
The schedulers that need to be implemented are FIFO (N), SSTF (S), LOOK (L), CLOOK (C), and FLOOK (F) 
(the letters in bracket define which parameter must be given in the –s program flag shown below). 
 
You are to implement these different IO-schedulers in C or C++ and submit the source code and Makefile as a *.zip, *.tar or 
*.tar.Z, which we will compile and run. Please test on linserv*.cims.nyu.edu before submission. 
 
 
Invocation is as follows: 
 ./iosched [ –s<schedalgo> | -v | -q | -f ] <inputfile> 
 
Only the “-s” option is required. The default scheduler is fifo is “-s” is not supplied. Options as usual can be in any order. 
The input file is structured as follows: Lines starting with ‘#’ are comment lines and should be ignored. 
Any other line describes an IO operation where the 1
st
 integer is the time step at which the IO operation is issued and the 2
nd
 
integer is the track that is accesses. Since IO operation latencies are largely dictated by seek delay (i.e. moving the head to the 
correct track), we ignore rotational and transfer delays for simplicity. The inputs are well formed. 
 
#io generator 
#numio=32 maxtracks=512 lambda=10.000000 
1 339 
131 401 
 
We assume that moving the head by one track will cost one time unit. As a result, your simulation can/should be done using 
integers. The disk can only consume/process one IO request at a time. Once a request is active on the disk it cannot be 
interrupted by any other incoming request. Hence these requests must be maintained in an IO queue and managed according 
to the scheduling policy. The initial direction of the LOOK algorithms is from 0-tracks to higher tracks. The head is initially 
positioned at track=0 at time=0. Note that you do not have to know the maxtrack (think SCAN vs. LOOK). Programming Assignment #4 (Lab 4): IO Scheduling Professor Hubertus Franke 
Class CSCI-GA.2250-001 Summer 2024 
 
Each simulation should print information on individual IO requests followed by a SUM line that has computed some statistics 
of the overall run. (see reference outputs). 
 
For each IO request create an info line (5 requests shown) in the order of appearance in the input file. 
 0: 1 1 431 
 1: 87 467 533 
 2: 280 431 467 
 3: 321 533 762 
 4: 505 762 791 
 
Created by 
 printf("%5d: %5d %5d %5dn", iop, req->arr_time, r->start_time, r->end_time); 
 
args: IO-op#, its arrival to the system (same as from inputfile), its disk service start time, its disk service end time 
 
Please remember “ %5d” is not “%6d” !!! For C++ formatting refer back to lab2 and lab3 where similar outputs were created. 
 
and for the statistics of the simulation provide a SUM line ( note variables printed as “%lf” are double floats ). 
 
Created by: printf("SUM: %d %d %.4lf %.2lf %.2lf %dn", 
 total_time, tot_movement, io_utilization, 
 avg_turnaround, avg_waittime, max_waittime); 
total_time: total simulated time, i.e. until the last I/O request has completed. 
tot_movement: total number of tracks the head had to be moved 
io_utilization: ratio of time_io_was_busy / total_time 
avg_turnaround: average turnaround time per operation from time of submission to time of completion 
avg_waittime: average wait time per operation (time from submission to issue of IO request to start disk operation) 
max_waittime: maximum wait time for any IO operation. 
 
10 sample inputs and outputs and runit/gradeit scripts are provided with the assignment on NYU brightspace. 
Please look at the sum results and identify what different characteristics the schedulers exhibit. 
 
You can make the following assumptions (enforced and caught by the reference program). 
- at most 10000 IO operations will be tested, so its OK (recommended) to first read all requests from file before processing. 
- all io-requests are provided in increasing time order (no sort needed) 
- you never have two IO requests arrive at the same time (so input is monotonically increasing) 
 
I strongly suggest, you do not use discrete event simulation this time. You can write a simple loop that increments simulation 
time by one and checks whether any action is to be taken. In that case you have to check in the following order. 
The code structure should look something like this (there are some edge conditions you have to consider, such as the next I/O 
is for the track the head currently is at, etc. ): 
 
 while (true) 
if a new I/O arrived at the system at this current time 
 → add request to IO-queue 
if an IO is active and completed at this time 
 → Compute relevant info and store in the IO request for final summary 
if no IO request active now 
 if requests are pending 
 → Fetch the next request from IO-queue and start the new IO. 
 else if all IO from input file processed 
 → exit simulation 
if an IO is active 
 → Move the head by one unit in the direction its going (to simulate seek) 
Increment time by 1 
 
When switching queues in FLOOK you always continue in the direction you were going from the current position, until the 
queue is empty. Then you switch direction until empty and then switch the queues continuing into that direction and so forth. 
While other variants are possible, I simply chose this one this time though other variants make also perfect sense. Programming Assignment #4 (Lab 4): IO Scheduling Professor Hubertus Franke 
Class CSCI-GA.2250-001 Summer 2024 
 
Additional Information: 
 
As usual, I provide some more detailed tracing information to help you overcome problems. Note your code only needs to 
provide the result line per IO request and the ‘SUM line’. 
 
The reference program under ~frankeh/Public/lab4/iosched on the cims machine implements three additional options: –v, -q, 
-f to debug deeper into IO tracing and IO queues. 
 
The –v execution trace contains 3 different operations (add a request to the IO-queue, issue an operation to the disk and 
finish a disk operation). Following is an example of tracking IO-op 18 through the times 1151..1307 from submission to 
completion. 
 
1151: 18 add 221 // 18 is the IO-op # (starting with 0) and 221 is the track# requested 
1239: 18 issue 221 289 // 18 is the IO-op #, 221 is the track# requested, 289 is the current track# 
1307: 18 finish 68 // 18 is the IO-op #, 68 is total length/time of the io from request to completion 
 
-q shows the details of the IO queue and direction of movement ( 1==up , -1==down) and 
–f shows additional queue information during the FLOOK. 
 
Here Queue entries are tuples during add [ ior# : #io-track ] or triplets during get [ ior# : io-track# : distance ], 
where distance is negative if it goes into the opposite direction (where applicable ). 
 
Please use these debug flags and the reference program to get more insights on debugging the ins and outs (no punt intended) 
of this assignment and answering certain “why” questions. 
 
Generating your own input for further testing: 
 
A generator program is available under ~frankeh/Public/lab4/iomake and can be used to create additional inputs if you like to 
expand your testing. You will have to run this against the reference program ~frankeh/Public/lab4/iosched yourself. 
 
Usage: iomake [-v] [-t maxtracks] [-i num_ios] [-L lambda] [-f interarrival_factor] 
 
maxtracks is the tracks the disks will have, default is 512 
num_ios is the number of ios to generate, default is 32 
lambda is parameter to create a poisson distribution, default is 1.0 ( consider ranges from 0.01 .. 10.0 ) 
interarrival_factor is time factor how rapidly IOs will arrive, default is 1.0 ( consider values 0.5 .. 1.5 ), too small and the 
system will be overloaded and too large it will be underloaded and scheduling is mute as often only one i/o is outstanding. 
 
Below are the parameters for the 10 inputs files provided in the assignment so you don’t pick the same. 
 
1. iomake -v -t 128 -i 10 -L0.11 -f 0.4 
2. iomake -v -t 512 -i 20 -L0.51 
3. iomake -v -t 128 -i 50 -L0.51 
4. iomake -v -t 512 -i 100 -L0.01 
5. iomake -v -t 256 -i 50 -L1.1 
6. iomake -v -t 256 -i 20 -L0.3 
7. iomake -v -t 512 -i 100 -L0.9 
8. iomake -v -t 300 -i 80 -L3.4 -f 0.6 
9. iomake -v -t 1000 -i 80 -L3.4 -f 0.6 
10. iomake -v -t 512 -i 500 -L2.4 -f 0.6 

請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp





 

標簽:

掃一掃在手機打開當前頁
  • 上一篇:代寫MTH5510、代做Matlab程序語言
  • 下一篇:CSCI 2600代做、代寫Java設計程序
  • 無相關信息
    昆明生活資訊

    昆明圖文信息
    蝴蝶泉(4A)-大理旅游
    蝴蝶泉(4A)-大理旅游
    油炸竹蟲
    油炸竹蟲
    酸筍煮魚(雞)
    酸筍煮魚(雞)
    竹筒飯
    竹筒飯
    香茅草烤魚
    香茅草烤魚
    檸檬烤魚
    檸檬烤魚
    昆明西山國家級風景名勝區
    昆明西山國家級風景名勝區
    昆明旅游索道攻略
    昆明旅游索道攻略
  • 短信驗證碼平臺 理財 WPS下載

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

    Copyright © 2025 kmw.cc Inc. All Rights Reserved. 昆明網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    美女扒开腿免费视频_蜜桃传媒一区二区亚洲av_先锋影音av在线_少妇一级淫片免费放播放_日本泡妞xxxx免费视频软件_一色道久久88加勒比一_熟女少妇一区二区三区_老司机免费视频_潘金莲一级黄色片_精品国产精品国产精品_黑人巨大猛交丰满少妇
    日本成人精品视频| 在线观看日本中文字幕| 国产麻豆a毛片| 青青青视频在线播放| 99热6这里只有精品| 久久久久久久久久97| 可以看的av网址| 精人妻一区二区三区| 国产精品久久久久久亚洲色| 久久丫精品国产亚洲av不卡| 欧美做受高潮6| 91激情视频在线观看| 午夜成人亚洲理伦片在线观看| 永久免费看片直接| 在线观看欧美一区二区| 久久国产精品无码一级毛片| 久久久久久久久福利| 亚洲成人生活片| www.5588.com毛片| 无码人妻精品一区二区三区夜夜嗨| 久久久久久久久毛片| 粉嫩av蜜桃av蜜臀av| 欧美a级片免费看| 中文文字幕文字幕高清| 久久久免费看片| 天天躁日日躁狠狠躁免费麻豆| 最近中文字幕免费视频| 欧美黑人性猛交xxx| 老熟妇高潮一区二区三区| 99久久婷婷国产综合| 中出视频在线观看| 又黄又爽又色的视频| 99在线视频免费| 国产麻豆视频在线观看| 亚洲专区区免费| 中文字幕亚洲欧美日韩| www.狠狠爱| 女同毛片一区二区三区| 四虎国产精品免费| 天堂在线中文视频| 无码人妻丰满熟妇啪啪欧美| 日本在线视频播放| 黄色香蕉视频在线观看| 性欧美一区二区| 国产精品无码一区二区三| 日本一级二级视频| 成人免费视频国产免费观看| 亚洲天堂岛国片| 真实乱视频国产免费观看| a级一a一级在线观看| 黑人巨大猛交丰满少妇| 超碰在线国产97| 婷婷伊人五月天| 欧美肥妇bbwbbw| 日韩在线视频网址| 潘金莲一级黄色片| 中文字幕另类日韩欧美亚洲嫩草| 日本不卡一二区| 看黄色录像一级片| 天堂网av2018| 69xxx免费视频| www男人天堂| 色天使在线视频| 一出一进一爽一粗一大视频| 免费a在线观看播放| 丰满大乳奶做爰ⅹxx视频| 9.1成人看片免费版| 婷婷色一区二区三区| 日本免费www| 国产suv精品一区二区68| 亚洲二区在线播放| 国产免费a级片| 中文字幕av网址| 久久爱一区二区| 无码人妻精品一区二区三| 美女又爽又黄视频毛茸茸| 一级黄色片网址| 国产成人av免费观看| 日本精品一二三区| 国产肥白大熟妇bbbb视频| 欧美爱爱免费视频| 手机在线成人av| 99在线视频免费| 亚洲天堂2024| 久久久久久国产免费a片| www欧美com| 在线免费看黄视频| 日本中文字幕免费在线观看| 亚洲一区二区乱码| 波多野结衣久久久久| 国产精品无码网站| 99热这里只有精品2| 全黄一级裸体片| 国产精品无码自拍| 国产午夜精品理论片| 中文字幕在线免费看线人| 日本爱爱爱视频| 免费a在线观看播放| 精品人妻伦九区久久aaa片| 五级黄高潮片90分钟视频| 日韩成人黄色片| 中文字幕在线观看二区| 欧美熟妇一区二区| 捆绑凌虐一区二区三区| 国产女人18毛片水真多18| 18精品爽国产三级网站| 国产福利短视频| a级一a一级在线观看| 在线中文字日产幕| 日本人妻一区二区三区| 麻豆精品一区二区三区视频| 我不卡一区二区| 黄色国产在线播放| 亚洲色图 激情小说| 久久成人激情视频| 妺妺窝人体色WWW精品| 欧美成人午夜精品免费| 爱爱免费小视频| 国产123在线| 国产黄a三级三级| 加勒比婷婷色综合久久| 18岁成人毛片| 日本50路肥熟bbw| 91丝袜在线观看| 90岁老太婆乱淫| 自拍偷拍你懂的| 国内毛片毛片毛片毛片毛片| 亚洲丝袜在线观看| 毛茸茸free性熟hd| 玖草视频在线观看| 无码少妇精品一区二区免费动态| 制服丝袜第一页在线观看| 泷泽萝拉在线播放| 亚洲ⅴ国产v天堂a无码二区| 毛片网站免费观看| 免费看三级黄色片| 在线免费播放av| 国产又粗又长免费视频| 亚洲妇女无套内射精| 成人乱码一区二区三区av| 日本一级免费视频| 久久无码人妻一区二区三区| 亚洲天堂2024| av资源在线免费观看| 日韩精品视频一区二区| 国产一区二区三区四区在线| 一卡二卡三卡四卡五卡| 美女久久久久久久久久| 老女人性淫交视频| 自拍偷拍视频亚洲| 国产伦理在线观看| 国产欧美小视频| 日韩综合第一页| 欧美特级一级片| 中文字幕在线观看网址| 青草影院在线观看| 日韩精品无码一区二区三区久久久| 国产探花在线免费观看| 国产又粗又猛又爽又黄av| 人妻巨大乳一二三区| 国产免费美女视频| 中文字幕在线看高清电影| 久久精品无码一区二区三区毛片| 妺妺窝人体色WWW精品| 你懂的在线观看网站| 免费中文字幕在线| 午夜三级在线观看| 国产亚洲精品久久久久久豆腐| 免费在线观看成年人视频| 四虎永久免费观看| 国产成人精品综合久久久久99| 久久久久久国产免费a片| 公侵犯人妻一区二区三区| 国产视频久久久久久| 精品熟女一区二区三区| 18禁一区二区三区| 女人扒开双腿让男人捅 | 中国特级黄色大片| 日本不卡一区视频| 在线观看av中文字幕| 中文字幕一区三区久久女搜查官| tube国产麻豆| 91在线播放观看| 熟妇女人妻丰满少妇中文字幕| 国产一二三区精品| 麻豆av免费看| 屁屁影院国产第一页| 久久久久久国产精品无码| mm131丰满少妇人体欣赏图| 精品日韩在线视频| 男的操女的网站| www.com日本| 国产精品无码久久久久久| 日本一二三不卡视频| 情侣偷拍对白清晰饥渴难耐| 黄色一级片中国| 18禁裸乳无遮挡啪啪无码免费| 白白色免费视频| 久久久久久无码精品人妻一区二区| yjizz视频|