代码拉取完成,页面将自动刷新
同步操作将从 颜明博/disksim_original 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
/*
* DiskSim Storage Subsystem Simulation Environment (Version 3.0)
* Revision Authors: John Bucy, Greg Ganger
* Contributors: John Griffin, Jiri Schindler, Steve Schlosser
*
* Copyright (c) of Carnegie Mellon University, 2001, 2002, 2003.
*
* This software is being provided by the copyright holders under the
* following license. By obtaining, using and/or copying this software,
* you agree that you have read, understood, and will comply with the
* following terms and conditions:
*
* Permission to reproduce, use, and prepare derivative works of this
* software is granted provided the copyright and "No Warranty" statements
* are included with all reproductions and derivative works and associated
* documentation. This software may also be redistributed without charge
* provided that the copyright and "No Warranty" statements are included
* in all redistributions.
*
* NO WARRANTY. THIS SOFTWARE IS FURNISHED ON AN "AS IS" BASIS.
* CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER
* EXPRESSED OR IMPLIED AS TO THE MATTER INCLUDING, BUT NOT LIMITED
* TO: WARRANTY OF FITNESS FOR PURPOSE OR MERCHANTABILITY, EXCLUSIVITY
* OF RESULTS OR RESULTS OBTAINED FROM USE OF THIS SOFTWARE. CARNEGIE
* MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT
* TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT.
* COPYRIGHT HOLDERS WILL BEAR NO LIABILITY FOR ANY USE OF THIS SOFTWARE
* OR DOCUMENTATION.
*
*/
/*
* Definitions for simple system simulator that uses DiskSim as a slave.
*
* Contributed by Eran Gabber of Lucent Technologies - Bell Laboratories
*
*/
typedef double SysTime; /* system time in seconds.usec */
typedef struct { /* System level request */
char type; /* 'R' denotes read; 'W' denotes write */
short devno;
unsigned long blkno;
int bytecount;
SysTime start;
/* added may be removed later*/
int sectorcount;
double last_seek;
double last_latency;
int last_cylno;
double last_angle;
int background;
int async;
/* end added */
} Request;
/* routines for translating between the system-level simulation's simulated */
/* time format (whatever it is) and disksim's simulated time format (a */
/* double, representing the number of milliseconds from the simulation's */
/* initialization). */
/* In this example, system time is in seconds since initialization */
#define SYSSIMTIME_TO_MS(syssimtime) (syssimtime*1e3)
#define MS_TO_SYSSIMTIME(curtime) (curtime/1e3)
/* routine for determining a read request */
#define isread(r) ((r->type == 'R') || (r->type == 'r'))
/* exported by disksim_interface.c */
struct disksim;
struct disksim * disksim_interface_initialize (void *addr, int len, const char *pfile, const char *ofile);
struct disksim * disksim_interface_initialize_latency (void *addr, int len, const char *pfile, const char *ofile, int latency_weight, char *paramval, char *paramname, int sythio, char *sched_alg);
void disksim_interface_shutdown (struct disksim *disksim_in, SysTime syssimtime);
void disksim_interface_dump_stats (struct disksim *disksim_in, SysTime syssimtime);
void disksim_interface_internal_event (void *disksim_in, SysTime t);
void disksim_interface_request_arrive (struct disksim *disksim_in, SysTime syssimtime, Request *requestdesc);
/* exported by syssim_driver.c */
void syssim_report_completion(SysTime syssimtime, Request *r);
void syssim_schedule_callback(void (*f)(void *,double), SysTime t);
void syssim_report_completion(SysTime t, Request *r);
void syssim_deschedule_callback(void (*f)());
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。