diff --git a/README.md b/README.md index f911c9d2722b5a99950e0e365ebf17364a88a4f1..010bdd07ade23313f8bc6f3b06c85f87380c51e2 100644 --- a/README.md +++ b/README.md @@ -11,15 +11,15 @@ Because it's unprecedented accuracy: This tool helps with building DiskSim v4.0 in these ways: * base sources or these with [DIXtrac] ) tool were downloaded from: http://www.pdl.cmu.edu/Dixtrac/index.shtml -* optionally patch sources by Microsoft [SSD extension] were downloaded from: https://www.microsoft.com/en-us/download/details.aspx?id=52332 -* optionally patch sources by Oliver Liu [64bit patch] were downloaded from: https://github.com/myidpt/PFSsim/tree/master/disksim/64bit-ssd-patch-files +* patch sources by Microsoft [SSD extension] were downloaded from: https://www.microsoft.com/en-us/download/details.aspx?id=52332 +* patch sources by Oliver Liu [64bit patch] were downloaded from: https://github.com/myidpt/PFSsim/tree/master/disksim/64bit-ssd-patch-files * use additional patches in `patches/` -* optionally enforce C standard and optimization, so `disksim` can be compiled by f.e. `gcc` v5.4.0 and can run faster +* enforce C standard and optimization, so `disksim` can be compiled by f.e. `gcc` v5.4.0 and can run faster * run validation tests coming with sources Folder `scripts/` holds other useful tools including a generator of **JBOD|RAID{0|1|3|4|5}** _parv_ files. -## Download, patch and build DiskSim +## Build DiskSim ### Clone this repo ``` @@ -43,26 +43,14 @@ $ make help Make patched DiskSim Usage: - make [options] [target ...] - -Options: - DIXTRAC=yes|no ... use DiskSim with DIXtrac (by default: yes) - SSD=yes|no ... use Microsoft SSD extension (by default: yes) - ARCH64=yes|no ... use Oliver Liu 64bit patch (by default: yes) - PATCHSYTHDEVS=yes|no ... patch loadsynthdevs() (by default: yes) - PRINTMAPREQUEST=yes|no ... print map requests (by default: yes) - STD=<string> ... enforce C standard thru -std= (by default: gnu90) - OPTIMIZE=<string> ... enforce C optimization thru -O (by default: 2) - TOLERANT=yes|no ... ignore patch failures (by default: yes) - INSTALLDIR=<dir> ... dir to install binaries (by default: bin) + make [target ...] Targets: - all ......... make sources, compile and install - sources ..... prepare sources to src/ + all ......... make compile, install and test compile ..... compile disksim in build/disksim-4.0/ install ..... install binaries to bin/ test ........ run valadation tests - clean ....... delete build/ + clean ....... delete bin/ help ........ print this help screen ``` @@ -71,17 +59,20 @@ Targets: $ make ``` ``` -Build configuration: - * Use DiskSim with DIXtrac: yes - * Use Microsoft SSD extension: yes - * Use Oliver Liu 64bit patch: yes - * Patch loadsynthdevs(): yes - * Print map requests: yes - * Enforce C standard: gnu90 - * Enforce C optimization: 2 - * Ignore patch failures: yes - * Install dir for binaries: bin - +[DISKSIM] Compile ... +chmod +x 'build/disksim-4.0/libparam/'*.pl +make -C 'build/disksim-4.0' +make[1]: Vstupuje se do adresáře „/home/oem/BP/My_BP/patches_all/patched/build/disksim-4.0“ +make -C libddbg +make[2]: Vstupuje se do adresáře „/home/oem/BP/My_BP/patches_all/patched/build/disksim-4.0/libddbg“ +cc -O2 -std=gnu90 -g -I../libparam -c -o ddbg_assert.o ddbg_assert.c +cc -O2 -std=gnu90 -g -I../libparam -c -o ddbg_trace.o ddbg_trace.c +ar cru libddbg.a ddbg_assert.o ddbg_trace.o +ar: `u' modifier ignored since `D' is the default (see `U') +mkdir -p include/libddbg lib +cp -p libddbg.h include/libddbg +cp -p libddbg.a lib +make[2]: Opouštà se adresář „/home/oem/BP/My_BP/patches_all/patched/build/disksim-4.0/libddbg“ ... OK, installed binaries: @@ -99,6 +90,12 @@ OK, installed binaries: -rwxrwxr-x 1 jake jake 22792 pro 7 03:18 bin/mems_seektest -rwxrwxr-x 1 jake jake 610552 pro 7 03:18 bin/physim -rwxrwxr-x 1 jake jake 10480 pro 7 03:18 bin/rms + +[DISKSIM] Run validation test build/disksim-4.0/valid/runvalid ... +cd 'build/disksim-4.0/valid/' && sh 'runvalid' +These results represent actual drive validation experiments +... + ``` ### Run validation tests