亚洲十八**毛片_亚洲综合影院_五月天精品一区二区三区_久久久噜噜噜久久中文字幕色伊伊 _欧美岛国在线观看_久久国产精品毛片_欧美va在线观看_成人黄网大全在线观看_日韩精品一区二区三区中文_亚洲一二三四区不卡

代寫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





 

標(biāo)簽:

掃一掃在手機(jī)打開當(dāng)前頁
  • 上一篇:代寫MTH5510、代做Matlab程序語言
  • 下一篇:CSCI 2600代做、代寫Java設(shè)計程序
  • 無相關(guān)信息
    昆明生活資訊

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

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

    Copyright © 2025 kmw.cc Inc. All Rights Reserved. 昆明網(wǎng) 版權(quán)所有
    ICP備06013414號-3 公安備 42010502001045

    精品视频一区二区三区免费| 综合久草视频| 久久99热99| 制服黑丝国产在线| 66视频精品| 欧美日本韩国一区二区三区视频 | 日本最黄一级片免费在线| 黄色日韩在线| 天天操夜夜添| 午夜免费一区| 精品av久久707| 久久精品国内一区二区三区水蜜桃| 欧美日韩一区二区三区不卡| 欧美在线导航| 天天av天天翘天天综合网色鬼国产| 久久99久久久精品欧美| 亚洲丝袜另类动漫二区| 午夜欧美巨大性欧美巨大 | 欧美亚洲尤物久久| 女人抽搐喷水高潮国产精品| 粉嫩av一区二区三区免费野| 亚洲福利合集| 色老汉av一区二区三区| 极品尤物一区| 欧美日韩精品系列| 第一sis亚洲原创| 欧美成人猛片aaaaaaa| 精品一区二区三区的国产在线观看| 56国语精品自产拍在线观看| 日韩久久电影| 精品国产免费视频| 亚洲精品乱码| 日韩国产福利| 国产91丝袜在线观看| 黄色美女视频在线观看| 中文字幕不卡在线播放| 国精产品一区一区三区四川| 亚洲永久精品大片| 男人的天堂久久| 欧美日韩一区成人| 亚洲一区二区三区无吗| 一级特黄视频| 狠狠色丁香久久婷婷综| aa在线视频| 中文字幕亚洲区| 最新国产精品精品视频| 欧美日韩国产另类不卡| 中文字幕乱码亚洲无线精品一区| 免费毛片aaaaaa| 久久97超碰国产精品超碰| 伊人福利在线| 日韩视频久久| 欧美国产视频在线| 午夜精品福利一区二区三区av| 日韩欧美另类中文字幕| 欧美三级视频在线| 五月激情久久久| 亚洲网站情趣视频| 成人高清av在线| 偷拍精品精品一区二区三区| 高跟丝袜欧美一区| 国产精品久久久乱弄| 日韩黄色网址| 99久久精品免费| 北岛玲精品视频在线观看| 欧美巨大另类极品videosbest| 国产一区二区三区自拍| 91看片在线观看| 国产精品传媒入口麻豆| 西瓜成人精品人成网站| 97午夜影院| 成人午夜伦理影院| 国产精品视频一区二区三区| 51精品秘密在线观看| 日日骚欧美日韩| 国产理论在线| 在线视频欧美精品| 国产亚洲精品v| 天堂аⅴ在线地址8| 日本免费一区二区三区四区| 国产剧情一区二区在线观看| 91精品国产91久久综合桃花| 麻豆9191精品国产| 国产盗摄精品一区二区酒店| 无码av免费一区二区三区试看| 午夜久久美女| 在线中文字幕视频观看| 大桥未久av一区二区三区| 国产主播精品| 国产精品久久久久久福利| 亚洲一区二区三区国产| 国模一区二区三区| 国产啊啊啊视频在线观看| 色成年激情久久综合| 日韩av电影天堂| 久久人体av| 日本18视频网站| 中文字幕 久热精品 视频在线| 第一会所sis001亚洲| 77导航福利在线| 欧美日韩美女在线| 日韩1区2区日韩1区2区| 日本国产亚洲| 人成在线视频| 亚洲卡通欧美制服中文| 国产精品a级| 三妻四妾完整版在线观看电视剧 | 91偷拍一区二区三区精品| 日韩中文影院| 98精品视频| 亚洲小说图片| 宅男在线一区| 新片速递亚洲合集欧美合集| av小片在线| 狠狠狠色丁香婷婷综合激情| www欧美在线观看| h色视频在线观看| 欧美国产丝袜视频| 欧美日韩99| 欧洲一区二区三区| 欧美一级片在线| 久久综合一区二区| 在线精品国产| 99久久伊人| 亚洲大胆精品| 色综合 综合色| 奇米精品一区二区三区在线观看一| 亚洲影视资源| 国产免费永久在线观看| 在线观看一区日韩| www.欧美日韩国产在线| 亚洲91精品| 国产黄色一区| 欧洲免费在线视频| 欧洲精品在线观看| av资源站一区| 国产精品成人a在线观看| 91看片一区| 欧洲视频在线免费观看| 欧美欧美午夜aⅴ在线观看| 久久综合国产精品| 一本一本久久| 操欧美女人视频| а√资源新版在线天堂| 影视先锋av在线| 一区二区三区在线高清| 日韩成人一级片| 欧美日韩色图| 国产成人精品一区二三区在线观看 | 加勒比av一区二区| 欧美激情1区| 欧美成人直播| 毛片毛片毛片毛片| 午夜欧美大尺度福利影院在线看| 寂寞少妇一区二区三区| 91亚洲国产高清| 成人看片网站| 黄色软件在线| 日韩精品中午字幕| 亚洲国产一区视频| 99久久婷婷国产综合精品电影| 欧美视频导航| 极品国产人妖chinesets亚洲人妖| 黄网站在线观| 日本国产在线| 精品成a人在线观看| 好吊成人免视频| 国产三级精品三级| 韩国av一区二区三区在线观看| 最新欧美人z0oozo0| 18国产精品| 日本成人伦理电影| 日本精品一区二区三区在线播放| av电影资源| 9191久久久久久久久久久| 亚洲永久免费视频| 欧美激情自拍偷拍| 国产激情视频一区二区三区欧美| 中文亚洲免费| 性xxxx欧美老肥妇牲乱| 国产精品18hdxxxⅹ在线| 成人做爰视频www网站小优视频| 在线观看av的网站| 天堂资源在线中文精品| 99re这里只有精品6| 欧美视频一二三| 一级毛片免费看| 久久伊人蜜桃av一区二区| 免费人成黄页网站在线一区二区| 亚洲一区二区三区| 国产一区二区三区天码| 成人av地址| 欧美日韩伦理一区二区| 婷婷综合福利| 九七电影院97理论片久久tvb| av2020不卡| 色呦呦在线看| 久操视频在线观看| 91精品专区| 天天综合视频在线观看|