RuanDawnLord / SSDSim

Simulator for HDD/SSD, derived from the CMU PDL DiskSim, with the SSD-add-on patch from Microsoft Research applied.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

********************************************************************************
SSDSim: DiskSim 4.0, with Microsoft SSD-add-on patch applied. 
 * Need to install the bison and flex packages (e.g., sudo apt install bison flex, for Ubunntu/Debian). 
 * Tested with a 32-bit Ubuntu 14.10 OS, kernel version 3.16.0 with gcc 4.9.1.
 * Tested with a 32-bit Debian 10.2.0 OS, kernel version 4.19.0 with gcc 8.3.0. 
 * Don't run "make" with multiple threads (no "-j 2" for example).

Additional changes: 
 * Changed the math library (-lm) in several Makefiles (memsmodel/Makefile and src/Makefile).
 * Added SSDMODEL_LDFLAGS and SSDMODEL_CFLAGS in src/Makefile.
 * Added "-std=gnu89" into CFLAGS in src/Makefile, to always use GNU89 standards. 
   GNU11 and GNU89 standards handle inline function definitions differently [2]. 
   And you may see errors such as "inline function 'foo' declared but never defined".  

References:
 [1]. http://scobyseo.blogspot.com/2009/12/how-to-compile-disksim-40-ssdsimms-in.html
 [2]. https://gcc.gnu.org/gcc-5/porting_to.html
********************************************************************************

This directory contains release 4.0 of the DiskSim storage subsystem
simulator.  Check out the doc directory for he corresponding reference 
manual that describes the simulator and how to use it.

See the file COPYING for the copyright notice and copying conditions.

To quickly verify that you've got everything and that it works:

  1. "make" the top-level directory.
    
  2. "cd" to the subdirectory called "valid".

  3. type "runvalid".  This will execute the simulator a number of times, using
     sample configurations and workloads.  Among them are example validation
     experiments for a number of different SCSI disk drives.  To
     verify that things are working correctly, compare the result
     values from each execution to the expected value (provided on the
     preceding line), which is rounded.

If you plan to use disksim as a stand-alone simulator, these examples and
the user manual should get you started.

If you plan to incorporate disksim into a larger-scale simulator (e.g., a
full system simulator), disksim_interface.c should be very helpful in
getting it to happen quickly and relatively painlessly.  It is not compiled
into disksim for standalone operation.  Thanks to Eran Gabber at Lucent,
there is now a simple example of a system-level simulator incorporating
disksim as a slave -- check out syssim* (before and after compilation).

Please send bug reports, experiences, and problems to disksim@ece.cmu.edu.
If you find disksim useful, please let us know about it!

There are two public mailing lists for disksim:
disksim-announce@ece.cmu.edu
disksim-users@ece.cmu.edu

disksim-announce only receives official announcements about bugfixes
and new versions of DiskSim.  disksim-users is for public discussion.

Please visit one of these sites to join the mailing lists:

https://sos.ece.cmu.edu/mailman/listinfo/disksim-announce
https://sos.ece.cmu.edu/mailman/listinfo/disksim-users

About

Simulator for HDD/SSD, derived from the CMU PDL DiskSim, with the SSD-add-on patch from Microsoft Research applied.

License:Other


Languages

Language:C 86.3%Language:Perl 3.4%Language:TeX 3.3%Language:C++ 2.4%Language:Makefile 2.0%Language:Python 1.4%Language:Shell 0.5%Language:Yacc 0.4%Language:Lex 0.2%