/unsupported/trunk/crunch/load/step3.c |
---|
0,0 → 1,476 |
/* |
* Project: S.Ha.R.K. |
* |
* Coordinators: |
* Giorgio Buttazzo <giorgio@sssup.it> |
* Paolo Gai <pj@gandalf.sssup.it> |
* |
* Authors : |
* Paolo Gai <pj@gandalf.sssup.it> |
* (see the web pages for full authors list) |
* |
* ReTiS Lab (Scuola Superiore S.Anna - Pisa - Italy) |
* |
* http://www.sssup.it |
* http://retis.sssup.it |
* http://shark.sssup.it |
*/ |
/** |
------------ |
CVS : $Id: step3.c,v 1.1 2004-07-05 14:17:15 pj Exp $ |
File: $File$ |
Revision: $Revision: 1.1 $ |
Last update: $Date: 2004-07-05 14:17:15 $ |
------------ |
**/ |
/* |
* Copyright (C) 2000 Paolo Gai |
* |
* This program is free software; you can redistribute it and/or modify |
* it under the terms of the GNU General Public License as published by |
* the Free Software Foundation; either version 2 of the License, or |
* (at your option) any later version. |
* |
* This program is distributed in the hope that it will be useful, |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with this program; if not, write to the Free Software |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* |
*/ |
#include "kernel/kern.h" |
#include "string.h" |
#include "ll/i386/x-dos.h" |
#include "modules/rr.h" |
#include "modules/dummy.h" |
#include "modules/edf.h" |
#include "modules/sem.h" |
#include "modules/hartport.h" |
#include "drivers/keyb.h" |
#include "ctype.h" |
#include "tune.h" |
int ending=0; |
// Patterns |
#define MAX_PATTERN 10000 |
int max_pattern = 0; |
TIME pattern_t[MAX_PATTERN]; |
TIME pattern_period[MAX_PATTERN]; |
TIME pattern_wcet[MAX_PATTERN]; |
TIME pattern_iter[MAX_PATTERN]; |
TIME pattern_value[MAX_PATTERN]; |
TIME pattern_penalty[MAX_PATTERN]; |
// Random load |
int max_random = 0; |
TIME random_t[MAX_PATTERN]; |
TIME random_reldline[MAX_PATTERN]; |
TIME random_wcet[MAX_PATTERN]; |
int random_value[MAX_PATTERN]; |
int random_penalty[MAX_PATTERN]; |
// Bad load |
int max_bad = 0; |
TIME bad_t[MAX_PATTERN]; |
TIME bad_reldline[MAX_PATTERN]; |
TIME bad_wcet[MAX_PATTERN]; |
int bad_value[MAX_PATTERN]; |
int bad_penalty[MAX_PATTERN]; |
#define WCET_SLACK 500 |
void tune_pattern(void) |
{ |
int i,w; |
for (i=0; i<max_pattern; i++) { |
place(0,15); |
cprintf("Tuning index %d/%d.\n",i,max_pattern); |
if (i>0 && pattern_wcet[i]==pattern_wcet[i-1]) |
pattern_iter[i] = pattern_iter[i-1]; |
else { |
w = (pattern_wcet[i]*80)/100-WCET_SLACK; |
// if (w>pattern_wcet[i]-WCET_SLACK) w=pattern_wcet[i]-WCET_SLACK; |
pattern_iter[i] = tune_CPU_speed(w); |
} |
} |
} |
// Shape modification |
#define DEFAULT_SHIFT 1000000 |
#define MAX_SHAPE 1000 |
bandwidth_t shape_B[MAX_SHAPE]; |
TIME shape_T[MAX_SHAPE]; |
int max_shape; |
// this function creates a set if tasks (1 or 2) that comes at random |
// time, with random values and random wcet. |
#define MAX_PERIOD 2998 |
void generate_random_load(void) |
{ |
int current_time = DEFAULT_SHIFT; |
while (current_time<shape_T[max_shape-1]*1000000) { |
random_t[max_random] = current_time; |
random_reldline[max_random] = rand()%MAX_PERIOD*1000+2; |
random_wcet[max_random] = rand()%(random_reldline[max_random]-1000)+1000; |
random_value[max_random] = rand()%101; |
random_penalty[max_random] = rand()%101; |
if (rand()%2) |
current_time += random_reldline[max_random] + 100000; |
max_random++; |
} |
} |
#define MAX_VALUE_REL_DLINE 3000000 |
#define SUBTASKS 10 |
#define SUBSUBTASKS 30 |
void generate_bad_load(void) |
{ |
int i,j,k; |
bandwidth_t freeB; |
TIME t,l; |
int subtasks, rdline; |
for (i=1; i < max_shape; i++) { |
//length of the period with the same max bandwidth |
l = (shape_T[i]-shape_T[i-1])* 1000000; |
freeB = MAX_BANDWIDTH - shape_B[i-1]; |
t = shape_T[i-1]*1000000 + DEFAULT_SHIFT; |
if (l/SUBTASKS > MAX_VALUE_REL_DLINE) { |
subtasks = l/MAX_VALUE_REL_DLINE; |
rdline = MAX_VALUE_REL_DLINE; |
} |
else { |
subtasks = SUBTASKS; |
rdline = l/SUBTASKS; |
} |
for (j=0; j<subtasks; j++) { |
// create the first "big" task |
bad_t[max_bad] = t; |
bad_reldline[max_bad] = rdline; |
bad_wcet[max_bad] = (int)(((double)freeB/(double)MAX_BANDWIDTH)*bad_reldline[max_bad]); |
bad_value[max_bad] = 80; |
bad_penalty[max_bad] = 90; |
max_bad++; |
// create the small subtasks!! |
for (k=0; k<SUBSUBTASKS; k++) { |
bad_t[max_bad] = t; |
bad_reldline[max_bad] = rdline/SUBSUBTASKS; |
bad_wcet[max_bad] = (int)(((double)freeB/(double)MAX_BANDWIDTH)*bad_reldline[max_bad]); |
bad_value[max_bad] = 100/SUBSUBTASKS; |
bad_penalty[max_bad] = 200/SUBSUBTASKS; |
max_bad++; |
t += rdline/SUBSUBTASKS; |
} |
} |
} |
} |
#define INSERT_RANDOM 1 |
#define INSERT_BAD 2 |
// This function merges the random load and the bad_load into the pattern! |
// This function subsumes that the two arrays are ordered by time. |
void generate_pattern(void) |
{ |
int random_i, bad_i; |
int todo = 0; |
random_i = 0; |
bad_i = 0; |
while (!(random_i == max_random && bad_i == max_bad)) { |
if (random_i < max_random) { |
// there are random available |
if (bad_i < max_bad) |
// random and bad available |
if (random_t[random_i] < bad_t[bad_i]) |
todo = INSERT_RANDOM; |
else |
todo = INSERT_BAD; |
else |
// only random |
todo = INSERT_RANDOM; |
} |
else |
// only bad available |
todo = INSERT_BAD; |
if (todo == INSERT_RANDOM) { |
pattern_t[max_pattern] = random_t[random_i]; |
pattern_period[max_pattern] = random_reldline[random_i]; |
pattern_wcet[max_pattern] = random_wcet[random_i]; |
pattern_value[max_pattern] = random_value[random_i]; |
pattern_penalty[max_pattern] = random_penalty[random_i]; |
max_pattern++; |
random_i++; |
} |
else { |
pattern_t[max_pattern] = bad_t[bad_i]; |
pattern_period[max_pattern] = bad_reldline[bad_i]; |
pattern_wcet[max_pattern] = bad_wcet[bad_i]; |
pattern_value[max_pattern] = bad_value[bad_i]; |
pattern_penalty[max_pattern] = bad_penalty[bad_i]; |
max_pattern++; |
bad_i++; |
} |
} |
} |
// Read/Write part |
#define FILEBUF_DIM 10000 |
/* This is the buffer used by read_myfile */ |
char myfilebuf[FILEBUF_DIM]; |
/* This is the number of bytes read by read_myfile */ |
int myfilebuf_length; |
/* the buffer b is scannedc to search for numbers |
at the first non-number the function stops */ |
int geti(char *b, int *pos, int maxpos) |
{ |
int res = 0; |
// skip first chars |
while (!isdigit(b[*pos])) { |
(*pos)++; |
if (*pos == maxpos) return -1; // Error!!! |
} |
// read the numbers |
do { |
res = (res * 10) + b[*pos] - '0'; |
(*pos)++; |
} while (isdigit(b[*pos])); |
return res; |
} |
void parse_shape(void) |
{ |
int curr_filepos = 0; |
int i = 0; |
// read the number of tasks into the data file |
max_shape = geti(myfilebuf, &curr_filepos, myfilebuf_length); |
if (max_shape == -1) { |
cprintf("Error parsing shape.dat file...\n"); |
sys_end(); |
} |
for (i=0; i<max_shape; i++) { |
// read the seven datas |
shape_T[i] = geti(myfilebuf, &curr_filepos, myfilebuf_length); |
shape_B[i] = geti(myfilebuf, &curr_filepos, myfilebuf_length); |
// check the last one for an error |
if (shape_B[i] == -1) { |
cprintf("Error parsing shape %d...\n",i); |
sys_end(); |
} |
} |
} |
void read_shapes(void) |
{ |
char name[]="shape.dat"; |
/* DOS file descriptor */ |
DOS_FILE *f; |
/* Error code */ |
int err; |
/* open the DOS file for reading (you can specify only "r" or "w") */ |
f = DOS_fopen(name,"r"); |
/* check for open errors */ |
if (!f) { |
/* error!! */ |
err = DOS_error(); |
/* note that if you call DOS_error() here, it return 0!!! */ |
cprintf("Error %d opening %s...\n", err, name); |
myfilebuf_length = 0; |
return; |
} |
/* read up to 1000 chars */ |
myfilebuf_length = DOS_fread(&myfilebuf,1,FILEBUF_DIM,f); |
/* check for errors */ |
err = DOS_error(); |
cprintf("Read %d bytes from %s...\n", myfilebuf_length, name); |
if (err) { |
cprintf("Error %d reading %s...\n", err, name); |
myfilebuf_length = 0; |
/* there is not return because I want to close the file! */ |
} |
/* Close the file */ |
DOS_fclose(f); |
} |
/* This function write myfile.out (up to 30 chars) */ |
void write_vpattern(void *arg) |
{ |
DOS_FILE *f; /* DOS file descriptor */ |
int err=0; /* Error code */ |
int writtenbytes = 0; /* number of files written */ |
char buf[100]; |
int i; |
/* open the DOS file for writing (you can specify only "r" or "w") */ |
f = DOS_fopen("vpattern.dat","w"); |
/* check for open errors */ |
if (!f) { |
/* error!! */ |
err = DOS_error(); |
/* note that if you call DOS_error() here, it return 0!!! */ |
cprintf("Error %d opening hpattern.dat...\n", err); |
return; |
} |
sprintf(buf,"%d\r\n",max_pattern); |
writtenbytes += DOS_fwrite(buf,1,strlen(buf),f); |
for (i=0; i<max_pattern; i++) { |
sprintf(buf,"%ld %ld %ld %ld %ld %ld\r\n", |
pattern_t[i], |
pattern_period[i], |
pattern_wcet[i], |
pattern_iter[i], |
pattern_value[i], |
pattern_penalty[i]); |
writtenbytes += DOS_fwrite(buf,1,strlen(buf),f); |
/* check for errors */ |
err = DOS_error(); |
if (err) break; |
} |
cprintf("Written %d bytes into vpattern.dat...\n", writtenbytes); |
if (err) { |
cprintf("Error %d writing vpattern.dat...\n", err); |
/* there is not return because I want to close the file! */ |
} |
/* Close the file */ |
DOS_fclose(f); |
} |
/*+ sysyem tick in us +*/ |
#define TICK 0 |
/*+ RR tick in us +*/ |
#define RRTICK 10000 |
void read_myfile(void); |
TIME __kernel_register_levels__(void *arg) |
{ |
struct multiboot_info *mb = (struct multiboot_info *)arg; |
EDF_register_level(EDF_ENABLE_ALL); |
RR_register_level(RRTICK, RR_MAIN_NO, mb); |
RR_register_level(RRTICK, RR_MAIN_YES, mb); |
dummy_register_level(); |
SEM_register_module(); |
read_shapes(); |
return TICK; |
} |
NRT_TASK_MODEL keyb_model; |
TASK __init__(void *arg) |
{ |
KEYB_PARMS kparms = BASE_KEYB; |
HARTPORT_init(); |
nrt_task_default_model(keyb_model); |
nrt_task_def_system(keyb_model); |
nrt_task_def_nokill(keyb_model); |
keyb_def_task(kparms,(TASK_MODEL *)&keyb_model); |
KEYB_init(&kparms); |
set_exchandler_grx(); |
srand(sys_gettime(NULL)); |
clear(); |
sys_atrunlevel(write_vpattern, NULL, RUNLEVEL_AFTER_EXIT); |
parse_shape(); |
// random load... |
generate_random_load(); |
// a big task and a lot of small tasks that uses 2*(MAX_BANDWIDTH-shape) |
generate_bad_load(); |
// mixes the two loads |
generate_pattern(); |
tune_pattern(); |
return (void *)0; |
} |
// never called!!! |
int main() |
{ |
return 0; |
} |
/unsupported/trunk/crunch/load/step1b.c |
---|
0,0 → 1,34 |
/* |
Step 1b: Generation of the Shape of the hard periodic load |
--------------------------------------------------------- |
This is a variant for the step1. It simply produces a constant periodic |
load. |
*/ |
#include <stdio.h> |
#include <stdlib.h> |
#define MAX_BANDWIDTH 0xFFFFFFFF |
int x; |
int x_total[1000], x_B[1000]; |
int main() |
{ |
unsigned length; |
unsigned i; |
scanf("%d",&length); |
srand(time(0)); |
printf("2\n"); |
i=(MAX_BANDWIDTH/100)*(rand()%90); |
printf("0 %u\n",i); |
printf("%u 0\n",length); |
fprintf(stderr,"Bandwidth=%f",((double)i)/MAX_BANDWIDTH); |
return 0; |
} |
/unsupported/trunk/crunch/load/step4.c |
---|
0,0 → 1,189 |
/* |
* step 3: generation of the configuration file for CRUNCH |
*/ |
#include <stdio.h> |
// Patterns |
#define MAX_PATTERN 10000 |
int max_hpattern = 0; |
int hpattern_t[MAX_PATTERN]; |
int hpattern_period[MAX_PATTERN]; |
int hpattern_wcet[MAX_PATTERN]; |
int hpattern_iter[MAX_PATTERN]; |
int hpattern_index=0; |
int max_vpattern = 0; |
int vpattern_t[MAX_PATTERN]; |
int vpattern_period[MAX_PATTERN]; |
int vpattern_wcet[MAX_PATTERN]; |
int vpattern_iter[MAX_PATTERN]; |
int vpattern_value[MAX_PATTERN]; |
int vpattern_penalty[MAX_PATTERN]; |
int vpattern_index=0; |
// Data structores needed for crunch |
#define MAX_CRUNCH 10000 |
int crunch_max = 0; |
int crunch_t[MAX_CRUNCH]; |
int crunch_type[MAX_CRUNCH]; |
int crunch_dline[MAX_CRUNCH]; |
int crunch_wcet[MAX_CRUNCH]; |
int crunch_iterations[MAX_CRUNCH]; |
int crunch_value[MAX_CRUNCH]; |
int crunch_penalty[MAX_CRUNCH]; |
void read_hpattern(char *); |
void read_vpattern(char *); |
void merge_dat(void); |
void write_dat(void); |
int main(int argc, char **argv) |
{ |
if (argc != 3) { |
fprintf(stderr,"Usage: step4 hpattern.dat vpattern.dat\n\n"); |
exit(0); |
} |
read_hpattern(argv[1]); |
read_vpattern(argv[2]); |
merge_dat(); |
write_dat(); |
return 0; |
} |
/* |
* |
* Reading/Writing patterns |
* |
*/ |
/* |
* This function read from a file written in the format of |
* hpattern.dat, and fills the internal pattern data structure. |
*/ |
void read_hpattern(char *name) |
{ |
int i; |
FILE *f; |
f = fopen(name,"r"); |
fscanf(f,"%d", &max_hpattern); |
for (i=0; i<max_hpattern; i++) { |
fscanf(f,"%d %d %d %d", &hpattern_t[i], &hpattern_period[i], |
&hpattern_wcet[i], &hpattern_iter[i]); |
// printf("Hard %d %d %d %d\n", hpattern_t[i], hpattern_period[i], |
// hpattern_wcet[i], hpattern_iter[i]); |
} |
} |
/* |
* This function read from a file written in the format of |
* vpattern.dat, and fills the internal pattern data structure. |
*/ |
void read_vpattern(char *name) |
{ |
int i; |
FILE *f; |
f = fopen(name,"r"); |
fscanf(f,"%d", &max_vpattern); |
for (i=0; i<max_vpattern; i++) { |
fscanf(f,"%d %d %d %d %d %d", |
&vpattern_t[i], &vpattern_period[i], |
&vpattern_wcet[i], &vpattern_iter[i], |
&vpattern_value[i], &vpattern_penalty[i]); |
// printf("Value %d %d %d %d %d %d\n", vpattern_t[i], vpattern_period[i], |
// vpattern_wcet[i], vpattern_iter[i], |
// vpattern_value[i], vpattern_penalty[i]); |
} |
} |
#define INSERT_V 1 |
#define INSERT_H 2 |
void merge_dat(void) |
{ |
int h_i, v_i; |
int todo = 0; |
h_i = 0; |
v_i = 0; |
while (!(h_i == max_hpattern && v_i == max_vpattern)) { |
if (h_i < max_hpattern) |
// there are h available |
if (v_i < max_vpattern) |
// random and bad available |
if (vpattern_t[v_i] < hpattern_t[h_i]) |
todo = INSERT_V; |
else |
todo = INSERT_H; |
else |
// only H |
todo = INSERT_H; |
else |
// only bad available |
todo = INSERT_V; |
if (todo == INSERT_V) { |
crunch_t[crunch_max] = vpattern_t[v_i]; |
crunch_type[crunch_max] = 1; |
crunch_dline[crunch_max] = vpattern_period[v_i]; |
crunch_wcet[crunch_max] = vpattern_wcet[v_i]; |
crunch_iterations[crunch_max] = vpattern_iter[v_i]; |
crunch_value[crunch_max] = vpattern_value[v_i]; |
crunch_penalty[crunch_max] = vpattern_penalty[v_i]; |
crunch_max++; |
v_i++; |
} |
else { |
crunch_t[crunch_max] = hpattern_t[h_i]; |
crunch_type[crunch_max] = 0; |
crunch_dline[crunch_max] = hpattern_period[h_i]; |
crunch_wcet[crunch_max] = hpattern_wcet[h_i]; |
crunch_iterations[crunch_max] = hpattern_iter[h_i]; |
crunch_value[crunch_max] = 0; |
crunch_penalty[crunch_max] = 0; |
crunch_max++; |
h_i++; |
} |
} |
} |
void write_dat(void) |
{ |
int i; |
printf("%d\n", crunch_max); |
for (i=0; i<crunch_max; i++) |
printf("%d %d %d %d %d %d %d\n", |
crunch_t[i], crunch_type[i], crunch_dline[i], crunch_wcet[i], |
crunch_iterations[i], crunch_value[i], crunch_penalty[i]); |
} |
/unsupported/trunk/crunch/load/step2b.c |
---|
0,0 → 1,456 |
/* |
* Project: S.Ha.R.K. |
* |
* Coordinators: |
* Giorgio Buttazzo <giorgio@sssup.it> |
* Paolo Gai <pj@gandalf.sssup.it> |
* |
* Authors : |
* Paolo Gai <pj@gandalf.sssup.it> |
* (see the web pages for full authors list) |
* |
* ReTiS Lab (Scuola Superiore S.Anna - Pisa - Italy) |
* |
* http://www.sssup.it |
* http://retis.sssup.it |
* http://shark.sssup.it |
*/ |
/** |
------------ |
CVS : $Id: step2b.c,v 1.1 2004-07-05 14:17:15 pj Exp $ |
File: $File$ |
Revision: $Revision: 1.1 $ |
Last update: $Date: 2004-07-05 14:17:15 $ |
------------ |
**/ |
/* |
* Copyright (C) 2000 Paolo Gai |
* |
* This program is free software; you can redistribute it and/or modify |
* it under the terms of the GNU General Public License as published by |
* the Free Software Foundation; either version 2 of the License, or |
* (at your option) any later version. |
* |
* This program is distributed in the hope that it will be useful, |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with this program; if not, write to the Free Software |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* |
*/ |
#include "kernel/kern.h" |
#include "string.h" |
#include "ll/i386/x-dos.h" |
#include "modules/rr.h" |
#include "modules/dummy.h" |
#include "modules/edf.h" |
#include "modules/sem.h" |
#include "modules/hartport.h" |
#include "drivers/keyb.h" |
#include "ctype.h" |
#include "tune.h" |
int ending=0; |
// Patterns |
#define MAX_PATTERN 10000 |
int max_pattern = 0; |
TIME pattern_t[MAX_PATTERN]; |
TIME pattern_period[MAX_PATTERN]; |
TIME pattern_wcet[MAX_PATTERN]; |
TIME pattern_iter[MAX_PATTERN]; |
void record_pattern(TIME t, TIME period, TIME wcet) |
{ |
pattern_t[max_pattern] = t; |
pattern_period[max_pattern] = period; |
pattern_wcet[max_pattern] = wcet; |
max_pattern++; |
} |
#define WCET_SLACK 500 |
void tune_pattern(void) |
{ |
int i,w; |
for (i=0; i<max_pattern; i++) { |
w = (pattern_wcet[i]*80)/100-WCET_SLACK; |
// if (w>pattern_wcet[i]-WCET_SLACK) w=pattern_wcet[i]-WCET_SLACK; |
if (w<0) w=WCET_SLACK/2; |
pattern_iter[i] = tune_CPU_speed(w); |
} |
} |
// Shape modification |
#define DEFAULT_SHIFT 1000000 |
#define MAX_SHAPE 1000 |
bandwidth_t shape=0; // current shape threshold |
int current_shape = 0; |
bandwidth_t shape_B[MAX_SHAPE]; |
TIME shape_T[MAX_SHAPE]; |
int max_shape; |
void shape_event(void *arg) |
{ |
shape = shape_B[0]; |
} |
void end_event(void *arg) |
{ |
ending = 1; |
} |
void start_shape(void) |
{ |
struct timespec t; |
NULL_TIMESPEC(&t); |
kern_cli(); |
kern_event_post(&t,shape_event,NULL); |
ADDUSEC2TIMESPEC(DEFAULT_SHIFT,&t); |
kern_event_post(&t,end_event,NULL); |
kern_sti(); |
} |
// Hard task |
#define ASTER_LIM 80 |
void *hard_task(void *arg) |
{ |
int j, x, y; |
char s[2]; |
struct timespec t; |
int b; |
NULL_TIMESPEC(&t); |
ADDUSEC2TIMESPEC((DEFAULT_SHIFT*2)/3,&t); |
b = TIMESPEC_A_LT_B(&proc_table[exec_shadow].request_time,&t); |
do { |
x = 0; |
y = rand() % 6 + 3; |
s[0] = '*'; s[1] = 0; |
while (x < ASTER_LIM) { |
for (j=0; j<50; j++) { |
s[0] = '*' + rand() % 100; |
puts_xy(x,y,rand()%15+1,s); |
} |
task_endcycle(); |
puts_xy(x,y,WHITE," "); |
x++; |
} |
} while (b && !ending); |
return (void *)0; |
} |
#define MAX_PERIOD 100 |
// Load creation |
void *create_load(void *arg) |
{ |
PID p; |
HARD_TASK_MODEL m; |
TIME period = 0; |
TIME wcet = 0; |
int x; // adaptive bandwidth... |
int counter=0; |
char buf[100]; |
hard_task_default_model(m); |
x = MAX_PERIOD/3; |
place(0,11); |
// waiting for the start time :-) |
while (sys_gettime(NULL)<DEFAULT_SHIFT/2); |
while (1) { |
sprintf(buf,"Shape: %5.3f Band: %5.3f period: %10ld wcet: %10ld Time: %d", |
(double)shape/(double)MAX_BANDWIDTH, |
(double)EDF_usedbandwidth(0)/(double)MAX_BANDWIDTH, |
period, wcet, sys_gettime(NULL)/1000000); |
puts_xy(0,10,WHITE,buf); |
period = (x+rand() % (MAX_PERIOD-x+1))*1000; |
wcet = rand()%1000 * (period/1500); |
if ((MAX_BANDWIDTH/period)*wcet > shape - EDF_usedbandwidth(0)) |
wcet = (shape - EDF_usedbandwidth(0))/period; |
if (wcet < period/40) wcet=period/40; |
if (wcet < 500) wcet=500; |
if (EDF_usedbandwidth(0) + (MAX_BANDWIDTH/period)*wcet < shape) { |
hard_task_def_mit(m, period); |
hard_task_def_wcet(m, wcet); |
p = task_create("hard_task",hard_task,&m,NULL); |
if (p == -1) { |
x += rand()%10-4; |
} |
else { |
record_pattern(sys_gettime(NULL),period,wcet); |
cprintf("%d ",++counter); |
task_activate(p); |
x *= 3; |
x /= 4; |
} |
if (x<MAX_PERIOD/3) x = MAX_PERIOD/3; |
if (x > MAX_PERIOD) x = MAX_PERIOD; |
} |
if (ending) return (void *)0; |
} |
} |
// Read/Write part |
#define FILEBUF_DIM 10000 |
/* This is the buffer used by read_myfile */ |
char myfilebuf[FILEBUF_DIM]; |
/* This is the number of bytes read by read_myfile */ |
int myfilebuf_length; |
/* the buffer b is scannedc to search for numbers |
at the first non-number the function stops */ |
int geti(char *b, int *pos, int maxpos) |
{ |
int res = 0; |
// skip first chars |
while (!isdigit(b[*pos])) { |
(*pos)++; |
if (*pos == maxpos) return -1; // Error!!! |
} |
// read the numbers |
do { |
res = (res * 10) + b[*pos] - '0'; |
(*pos)++; |
} while (isdigit(b[*pos])); |
return res; |
} |
void parse_shape(void) |
{ |
int curr_filepos = 0; |
int i = 0; |
// read the number of tasks into the data file |
max_shape = geti(myfilebuf, &curr_filepos, myfilebuf_length); |
if (max_shape == -1) { |
cprintf("Error parsing shape.dat file...\n"); |
sys_end(); |
} |
for (i=0; i<max_shape; i++) { |
// read the seven datas |
shape_T[i] = geti(myfilebuf, &curr_filepos, myfilebuf_length); |
shape_B[i] = geti(myfilebuf, &curr_filepos, myfilebuf_length); |
// check the last one for an error |
if (shape_B[i] == -1) { |
cprintf("Error parsing shape %d...\n",i); |
sys_end(); |
} |
} |
} |
void read_shapes(void) |
{ |
char name[]="shape.dat"; |
/* DOS file descriptor */ |
DOS_FILE *f; |
/* Error code */ |
int err; |
/* open the DOS file for reading (you can specify only "r" or "w") */ |
f = DOS_fopen(name,"r"); |
/* check for open errors */ |
if (!f) { |
/* error!! */ |
err = DOS_error(); |
/* note that if you call DOS_error() here, it return 0!!! */ |
cprintf("Error %d opening %s...\n", err, name); |
myfilebuf_length = 0; |
return; |
} |
/* read up to 1000 chars */ |
myfilebuf_length = DOS_fread(&myfilebuf,1,FILEBUF_DIM,f); |
/* check for errors */ |
err = DOS_error(); |
cprintf("Read %d bytes from %s...\n", myfilebuf_length, name); |
if (err) { |
cprintf("Error %d reading %s...\n", err, name); |
myfilebuf_length = 0; |
/* there is not return because I want to close the file! */ |
} |
/* Close the file */ |
DOS_fclose(f); |
} |
/* This function write myfile.out (up to 30 chars) */ |
void write_hpattern(void *arg) |
{ |
DOS_FILE *f; /* DOS file descriptor */ |
int err=0; /* Error code */ |
int writtenbytes = 0; /* number of files written */ |
char buf[100]; |
int i; |
/* open the DOS file for writing (you can specify only "r" or "w") */ |
f = DOS_fopen("hpattern.dat","w"); |
/* check for open errors */ |
if (!f) { |
/* error!! */ |
err = DOS_error(); |
/* note that if you call DOS_error() here, it return 0!!! */ |
cprintf("Error %d opening hpattern.dat...\n", err); |
return; |
} |
sprintf(buf,"%d\r\n",max_pattern); |
writtenbytes += DOS_fwrite(buf,1,strlen(buf),f); |
for (i=0; i<max_pattern; i++) { |
sprintf(buf,"%ld %ld %ld %ld\r\n", pattern_t[i], pattern_period[i], |
pattern_wcet[i], pattern_iter[i]); |
writtenbytes += DOS_fwrite(buf,1,strlen(buf),f); |
/* check for errors */ |
err = DOS_error(); |
if (err) break; |
} |
cprintf("Written %d bytes into hpattern.dat...\n", writtenbytes); |
if (err) { |
cprintf("Error %d writing hpattern.dat...\n", err); |
/* there is not return because I want to close the file! */ |
} |
/* Close the file */ |
DOS_fclose(f); |
} |
/*+ sysyem tick in us +*/ |
#define TICK 0 |
/*+ RR tick in us +*/ |
#define RRTICK 10000 |
void read_myfile(void); |
TIME __kernel_register_levels__(void *arg) |
{ |
struct multiboot_info *mb = (struct multiboot_info *)arg; |
EDF_register_level(EDF_ENABLE_ALL); |
RR_register_level(RRTICK, RR_MAIN_NO, mb); |
RR_register_level(RRTICK, RR_MAIN_YES, mb); |
dummy_register_level(); |
SEM_register_module(); |
read_shapes(); |
return TICK; |
} |
NRT_TASK_MODEL keyb_model; |
TASK __init__(void *arg) |
{ |
NRT_TASK_MODEL nrt; |
KEYB_PARMS kparms = BASE_KEYB; |
HARTPORT_init(); |
nrt_task_default_model(keyb_model); |
nrt_task_def_system(keyb_model); |
nrt_task_def_nokill(keyb_model); |
keyb_def_task(kparms,(TASK_MODEL *)&keyb_model); |
KEYB_init(&kparms); |
set_exchandler_grx(); |
nrt_task_default_model(nrt); |
srand(sys_gettime(NULL)); |
clear(); |
sys_atrunlevel(write_hpattern, NULL, RUNLEVEL_AFTER_EXIT); |
parse_shape(); |
start_shape(); |
task_activate(task_create("create_load",create_load,&nrt,NULL)); |
cputs("\nWaiting the end of the periodic tasks...\n"); |
while (task_counter != 1); |
// the task create_load preempt __init__ until all is finished! |
tune_pattern(); |
return (void *)0; |
} |
// never called!!! |
int main() |
{ |
return 0; |
} |
/unsupported/trunk/crunch/load/baby.bat |
---|
0,0 → 1,6 |
echo %1 > length.dat |
make |
make runstep1b |
x step2b |
x step3 |
make runstep4 |
/unsupported/trunk/crunch/load/120_1/shape.dat |
---|
0,0 → 1,9 |
8 |
0 3350074416 |
18 3178275728 |
23 0 |
48 3049426712 |
57 1202590816 |
73 1932735240 |
101 987842456 |
120 0 |
/unsupported/trunk/crunch/load/120_1/length.dat |
---|
0,0 → 1,0 |
120 |
/unsupported/trunk/crunch/load/120_1/crunch.dat |
---|
0,0 → 1,1004 |
1003 |
1000000 1 3600000 792000 837402 80 90 |
1000000 1 180000 39600 41185 5 10 |
1000000 1 948002 482431 509820 73 73 |
1000000 1 1005002 667004 705086 61 21 |
1000081 0 43000 24668 25390 0 0 |
1000252 0 90000 9846 9692 0 0 |
1000415 0 88000 4730 4290 0 0 |
1000578 0 69000 1978 1378 0 0 |
1180000 1 180000 39600 41182 5 10 |
1360000 1 180000 39600 41182 5 10 |
1540000 1 180000 39600 41182 5 10 |
1720000 1 180000 39600 41182 5 10 |
1900000 1 180000 39600 41182 5 10 |
2080000 1 180000 39600 41182 5 10 |
2105002 1 424002 113189 119082 85 64 |
2260000 1 180000 39600 41183 5 10 |
2440000 1 180000 39600 41183 5 10 |
2620000 1 180000 39600 41183 5 10 |
2629004 1 2690002 1271063 1344382 17 41 |
2800000 1 180000 39600 41195 5 10 |
2980000 1 180000 39600 41195 5 10 |
3160000 1 180000 39600 41195 5 10 |
3340000 1 180000 39600 41195 5 10 |
3520000 1 180000 39600 41195 5 10 |
3700000 1 180000 39600 41195 5 10 |
3880000 1 180000 39600 41195 5 10 |
4060000 1 180000 39600 41195 5 10 |
4240000 1 180000 39600 41195 5 10 |
4420000 1 180000 39600 41195 5 10 |
4483146 0 56000 30821 31902 0 0 |
4483299 0 95000 2375 1799 0 0 |
4600000 1 3600000 792000 837447 80 90 |
4600000 1 180000 39600 41180 5 10 |
4780000 1 180000 39600 41180 5 10 |
4960000 1 180000 39600 41180 5 10 |
5140000 1 180000 39600 41180 5 10 |
5320000 1 180000 39600 41180 5 10 |
5419006 1 2084002 157190 165589 94 29 |
5500000 1 180000 39600 41181 5 10 |
5680000 1 180000 39600 41181 5 10 |
5860000 1 180000 39600 41181 5 10 |
6040000 1 180000 39600 41181 5 10 |
6220000 1 180000 39600 41181 5 10 |
6400000 1 180000 39600 41181 5 10 |
6580000 1 180000 39600 41181 5 10 |
6589722 0 73000 2440 1867 0 0 |
6760000 1 180000 39600 41181 5 10 |
6940000 1 180000 39600 41181 5 10 |
7120000 1 180000 39600 41181 5 10 |
7300000 1 180000 39600 41181 5 10 |
7480000 1 180000 39600 41181 5 10 |
7603008 1 2663002 2506134 2651322 24 42 |
7660000 1 180000 39600 41183 5 10 |
7840000 1 180000 39600 41183 5 10 |
8020000 1 180000 39600 41183 5 10 |
8128465 0 79000 3360 2840 0 0 |
8200000 1 3600000 792000 837400 80 90 |
8200000 1 180000 39600 41177 5 10 |
8290324 0 99000 5582 5190 0 0 |
8290508 0 95000 3268 2742 0 0 |
8290649 0 82000 2050 1455 0 0 |
8380000 1 180000 39600 41177 5 10 |
8560000 1 180000 39600 41177 5 10 |
8740000 1 180000 39600 41177 5 10 |
8920000 1 180000 39600 41177 5 10 |
9019208 0 44000 17226 17509 0 0 |
9019362 0 67000 11010 10934 0 0 |
9100000 1 180000 39600 41177 5 10 |
9280000 1 180000 39600 41177 5 10 |
9460000 1 180000 39600 41177 5 10 |
9640000 1 180000 39600 41177 5 10 |
9820000 1 180000 39600 41177 5 10 |
10000000 1 180000 39600 41177 5 10 |
10180000 1 180000 39600 41177 5 10 |
10360000 1 180000 39600 41177 5 10 |
10366010 1 1902002 1718177 1817503 36 33 |
10540000 1 180000 39600 41182 5 10 |
10720000 1 180000 39600 41182 5 10 |
10900000 1 180000 39600 41182 5 10 |
11080000 1 180000 39600 41182 5 10 |
11260000 1 180000 39600 41182 5 10 |
11440000 1 180000 39600 41182 5 10 |
11620000 1 180000 39600 41182 5 10 |
11800000 1 3600000 792000 837396 80 90 |
11800000 1 180000 39600 41183 5 10 |
11980000 1 180000 39600 41183 5 10 |
12160000 1 180000 39600 41183 5 10 |
12178420 0 71000 1962 1361 0 0 |
12340000 1 180000 39600 41183 5 10 |
12368012 1 2920002 1675238 1772061 10 5 |
12368012 1 2569002 2400619 2539657 51 88 |
12502801 0 71000 1775 1163 0 0 |
12520000 1 180000 39600 41183 5 10 |
12583376 0 87000 22852 23462 0 0 |
12583532 0 85000 7178 6879 0 0 |
12583737 0 86000 2150 1560 0 0 |
12583941 0 67000 2090 1497 0 0 |
12700000 1 180000 39600 41183 5 10 |
12880000 1 180000 39600 41183 5 10 |
13060000 1 180000 39600 41183 5 10 |
13240000 1 180000 39600 41183 5 10 |
13420000 1 180000 39600 41183 5 10 |
13600000 1 180000 39600 41183 5 10 |
13780000 1 180000 39600 41183 5 10 |
13960000 1 180000 39600 41183 5 10 |
14140000 1 180000 39600 41183 5 10 |
14320000 1 180000 39600 41183 5 10 |
14446422 0 71000 10026 9895 0 0 |
14500000 1 180000 39600 41183 5 10 |
14527606 0 68000 4236 3766 0 0 |
14680000 1 180000 39600 41183 5 10 |
14860000 1 180000 39600 41183 5 10 |
14932727 0 88000 2200 1614 0 0 |
15037014 1 480002 45079 46999 43 49 |
15037014 1 857002 734926 776975 26 80 |
15040000 1 180000 39600 41198 5 10 |
15220000 1 180000 39600 41198 5 10 |
15400000 1 3600000 792000 837401 80 90 |
15400000 1 180000 39600 41197 5 10 |
15580000 1 180000 39600 41197 5 10 |
15760000 1 180000 39600 41197 5 10 |
15940000 1 180000 39600 41197 5 10 |
15985597 0 88000 2200 1613 0 0 |
15994016 1 1629002 830859 878529 98 10 |
15994016 1 2582002 350306 370027 27 13 |
15994016 1 2190002 13750 13833 59 86 |
16120000 1 180000 39600 41182 5 10 |
16300000 1 180000 39600 41182 5 10 |
16309389 0 78000 3885 3396 0 0 |
16480000 1 180000 39600 41182 5 10 |
16660000 1 180000 39600 41182 5 10 |
16840000 1 180000 39600 41182 5 10 |
17020000 1 180000 39600 41182 5 10 |
17200000 1 180000 39600 41182 5 10 |
17380000 1 180000 39600 41182 5 10 |
17560000 1 180000 39600 41182 5 10 |
17740000 1 180000 39600 41182 5 10 |
17920000 1 180000 39600 41182 5 10 |
17929489 0 72000 2886 2338 0 0 |
18011034 0 76000 1900 1296 0 0 |
18100000 1 180000 39600 41182 5 10 |
18253873 0 83000 2075 1481 0 0 |
18280000 1 180000 39600 41182 5 10 |
18284018 1 1352002 323167 341261 72 41 |
18460000 1 180000 39600 41192 5 10 |
18640000 1 180000 39600 41192 5 10 |
18820000 1 180000 39600 41192 5 10 |
19000000 1 1000000 260000 274465 80 90 |
19000000 1 50000 13000 13044 5 10 |
19050000 1 50000 13000 13044 5 10 |
19100000 1 50000 13000 13044 5 10 |
19150000 1 50000 13000 13044 5 10 |
19200000 1 50000 13000 13044 5 10 |
19250000 1 50000 13000 13044 5 10 |
19300000 1 50000 13000 13044 5 10 |
19350000 1 50000 13000 13044 5 10 |
19400000 1 50000 13000 13044 5 10 |
19450000 1 50000 13000 13044 5 10 |
19468581 0 100000 2531 1962 0 0 |
19468751 0 100000 2500 1931 0 0 |
19500000 1 50000 13000 13044 5 10 |
19549816 0 76000 1900 1296 0 0 |
19550000 1 50000 13000 13044 5 10 |
19600000 1 50000 13000 13044 5 10 |
19630450 0 90000 4680 4237 0 0 |
19630616 0 87000 10826 10738 0 0 |
19630857 0 72000 5658 5272 0 0 |
19650000 1 50000 13000 13044 5 10 |
19700000 1 50000 13000 13044 5 10 |
19736020 1 1031002 556354 588001 46 94 |
19750000 1 50000 13000 13040 5 10 |
19800000 1 50000 13000 13040 5 10 |
19850000 1 50000 13000 13040 5 10 |
19900000 1 50000 13000 13040 5 10 |
19950000 1 50000 13000 13040 5 10 |
20000000 1 1000000 260000 274439 80 90 |
20000000 1 50000 13000 13045 5 10 |
20035654 0 76000 4440 3983 0 0 |
20050000 1 50000 13000 13045 5 10 |
20100000 1 50000 13000 13045 5 10 |
20150000 1 50000 13000 13045 5 10 |
20197501 0 91000 4920 4490 0 0 |
20197668 0 100000 4608 4159 0 0 |
20197835 0 69000 3810 3316 0 0 |
20200000 1 50000 13000 13045 5 10 |
20250000 1 50000 13000 13045 5 10 |
20300000 1 50000 13000 13045 5 10 |
20350000 1 50000 13000 13045 5 10 |
20400000 1 50000 13000 13045 5 10 |
20450000 1 50000 13000 13045 5 10 |
20500000 1 50000 13000 13045 5 10 |
20550000 1 50000 13000 13045 5 10 |
20600000 1 50000 13000 13045 5 10 |
20650000 1 50000 13000 13045 5 10 |
20700000 1 50000 13000 13045 5 10 |
20750000 1 50000 13000 13045 5 10 |
20800000 1 50000 13000 13045 5 10 |
20850000 1 50000 13000 13045 5 10 |
20867022 1 2040002 1743982 1844825 6 60 |
20900000 1 50000 13000 13040 5 10 |
20950000 1 50000 13000 13040 5 10 |
21000000 1 1000000 260000 274448 80 90 |
21000000 1 50000 13000 13039 5 10 |
21050000 1 50000 13000 13039 5 10 |
21100000 1 50000 13000 13039 5 10 |
21150000 1 50000 13000 13039 5 10 |
21200000 1 50000 13000 13039 5 10 |
21250000 1 50000 13000 13039 5 10 |
21300000 1 50000 13000 13039 5 10 |
21350000 1 50000 13000 13039 5 10 |
21400000 1 50000 13000 13039 5 10 |
21450000 1 50000 13000 13039 5 10 |
21500000 1 50000 13000 13039 5 10 |
21550000 1 50000 13000 13039 5 10 |
21600000 1 50000 13000 13039 5 10 |
21650000 1 50000 13000 13039 5 10 |
21700000 1 50000 13000 13039 5 10 |
21750000 1 50000 13000 13039 5 10 |
21800000 1 50000 13000 13039 5 10 |
21850000 1 50000 13000 13039 5 10 |
21900000 1 50000 13000 13039 5 10 |
21950000 1 50000 13000 13039 5 10 |
22000000 1 1000000 260000 274457 80 90 |
22000000 1 50000 13000 13040 5 10 |
22050000 1 50000 13000 13040 5 10 |
22060859 0 80000 2000 1401 0 0 |
22100000 1 50000 13000 13040 5 10 |
22150000 1 50000 13000 13040 5 10 |
22200000 1 50000 13000 13040 5 10 |
22250000 1 50000 13000 13040 5 10 |
22300000 1 50000 13000 13040 5 10 |
22350000 1 50000 13000 13040 5 10 |
22400000 1 50000 13000 13040 5 10 |
22450000 1 50000 13000 13040 5 10 |
22500000 1 50000 13000 13040 5 10 |
22550000 1 50000 13000 13040 5 10 |
22600000 1 50000 13000 13040 5 10 |
22627458 0 89000 2693 2135 0 0 |
22627625 0 61000 1525 899 0 0 |
22650000 1 50000 13000 13040 5 10 |
22700000 1 50000 13000 13040 5 10 |
22750000 1 50000 13000 13040 5 10 |
22800000 1 50000 13000 13040 5 10 |
22850000 1 50000 13000 13040 5 10 |
22900000 1 50000 13000 13040 5 10 |
22950000 1 50000 13000 13040 5 10 |
23000000 1 1000000 260000 274422 80 90 |
23000000 1 50000 13000 13044 5 10 |
23007024 1 1133002 142298 149839 9 7 |
23007024 1 2695002 1986655 2101611 80 90 |
23050000 1 50000 13000 13039 5 10 |
23100000 1 50000 13000 13039 5 10 |
23113818 0 92000 2300 1719 0 0 |
23150000 1 50000 13000 13039 5 10 |
23200000 1 50000 13000 13039 5 10 |
23250000 1 50000 13000 13039 5 10 |
23300000 1 50000 13000 13039 5 10 |
23350000 1 50000 13000 13039 5 10 |
23400000 1 50000 13000 13039 5 10 |
23450000 1 50000 13000 13039 5 10 |
23500000 1 50000 13000 13039 5 10 |
23550000 1 50000 13000 13039 5 10 |
23600000 1 50000 13000 13039 5 10 |
23650000 1 50000 13000 13039 5 10 |
23700000 1 50000 13000 13039 5 10 |
23750000 1 50000 13000 13039 5 10 |
23761532 0 67000 1675 1058 0 0 |
23800000 1 50000 13000 13039 5 10 |
23850000 1 50000 13000 13039 5 10 |
23900000 1 50000 13000 13039 5 10 |
23950000 1 50000 13000 13039 5 10 |
24000000 1 5000000 5000000 5290375 80 90 |
24000000 1 250000 250000 263870 5 10 |
24250000 1 250000 250000 263870 5 10 |
24500000 1 250000 250000 263870 5 10 |
24750000 1 250000 250000 263870 5 10 |
25000000 1 250000 250000 263870 5 10 |
25250000 1 250000 250000 263870 5 10 |
25500000 1 250000 250000 263870 5 10 |
25750000 1 250000 250000 263870 5 10 |
25802026 1 924002 184480 194489 12 93 |
25802026 1 2922002 1647630 1742829 22 27 |
25802026 1 700002 388710 410581 55 10 |
25802026 1 1494002 1108734 1172599 89 98 |
26000000 1 250000 250000 263860 5 10 |
26250000 1 250000 250000 263860 5 10 |
26500000 1 250000 250000 263860 5 10 |
26750000 1 250000 250000 263860 5 10 |
27000000 1 250000 250000 263860 5 10 |
27250000 1 250000 250000 263860 5 10 |
27396028 1 1904002 741039 783489 68 19 |
27500000 1 250000 250000 263833 5 10 |
27750000 1 250000 250000 263833 5 10 |
28000000 1 250000 250000 263833 5 10 |
28250000 1 250000 250000 263833 5 10 |
28500000 1 250000 250000 263833 5 10 |
28750000 1 250000 250000 263833 5 10 |
29000000 1 5000000 5000000 5290414 80 90 |
29000000 1 250000 250000 263787 5 10 |
29250000 1 250000 250000 263787 5 10 |
29400030 1 2202002 1966810 2080616 55 79 |
29500000 1 250000 250000 263787 5 10 |
29750000 1 250000 250000 263787 5 10 |
30000000 1 250000 250000 263787 5 10 |
30250000 1 250000 250000 263787 5 10 |
30500000 1 250000 250000 263787 5 10 |
30750000 1 250000 250000 263787 5 10 |
31000000 1 250000 250000 263787 5 10 |
31250000 1 250000 250000 263787 5 10 |
31500000 1 250000 250000 263787 5 10 |
31702032 1 2763002 1822616 1928016 17 40 |
31750000 1 250000 250000 263835 5 10 |
32000000 1 250000 250000 263835 5 10 |
32250000 1 250000 250000 263835 5 10 |
32500000 1 250000 250000 263835 5 10 |
32750000 1 250000 250000 263835 5 10 |
33000000 1 250000 250000 263835 5 10 |
33250000 1 250000 250000 263835 5 10 |
33500000 1 250000 250000 263835 5 10 |
33750000 1 250000 250000 263835 5 10 |
34000000 1 5000000 5000000 5290416 80 90 |
34000000 1 250000 250000 263865 5 10 |
34250000 1 250000 250000 263865 5 10 |
34500000 1 250000 250000 263865 5 10 |
34565034 1 102002 48188 50269 33 46 |
34565034 1 2031002 1109806 1173704 98 60 |
34750000 1 250000 250000 263874 5 10 |
35000000 1 250000 250000 263874 5 10 |
35250000 1 250000 250000 263874 5 10 |
35500000 1 250000 250000 263874 5 10 |
35750000 1 250000 250000 263874 5 10 |
36000000 1 250000 250000 263874 5 10 |
36250000 1 250000 250000 263874 5 10 |
36500000 1 250000 250000 263874 5 10 |
36696036 1 1613002 1175317 1243026 55 42 |
36750000 1 250000 250000 263874 5 10 |
37000000 1 250000 250000 263874 5 10 |
37250000 1 250000 250000 263874 5 10 |
37500000 1 250000 250000 263874 5 10 |
37750000 1 250000 250000 263874 5 10 |
38000000 1 250000 250000 263874 5 10 |
38250000 1 250000 250000 263874 5 10 |
38409038 1 44002 19554 19973 88 66 |
38500000 1 250000 250000 263860 5 10 |
38553040 1 2042002 1261616 1334391 55 56 |
38750000 1 250000 250000 263839 5 10 |
39000000 1 5000000 5000000 5290365 80 90 |
39000000 1 250000 250000 263794 5 10 |
39250000 1 250000 250000 263794 5 10 |
39500000 1 250000 250000 263794 5 10 |
39750000 1 250000 250000 263794 5 10 |
40000000 1 250000 250000 263794 5 10 |
40250000 1 250000 250000 263794 5 10 |
40500000 1 250000 250000 263794 5 10 |
40695042 1 2321002 1709360 1808167 96 26 |
40750000 1 250000 250000 263884 5 10 |
41000000 1 250000 250000 263884 5 10 |
41250000 1 250000 250000 263884 5 10 |
41500000 1 250000 250000 263884 5 10 |
41750000 1 250000 250000 263884 5 10 |
42000000 1 250000 250000 263884 5 10 |
42250000 1 250000 250000 263884 5 10 |
42500000 1 250000 250000 263884 5 10 |
42750000 1 250000 250000 263884 5 10 |
43000000 1 250000 250000 263884 5 10 |
43116044 1 1508002 328958 347400 100 7 |
43116044 1 2053002 165947 174853 53 58 |
43250000 1 250000 250000 263790 5 10 |
43500000 1 250000 250000 263790 5 10 |
43750000 1 250000 250000 263790 5 10 |
44000000 1 5000000 5000000 5290418 80 90 |
44000000 1 250000 250000 263808 5 10 |
44250000 1 250000 250000 263808 5 10 |
44500000 1 250000 250000 263808 5 10 |
44750000 1 250000 250000 263808 5 10 |
45000000 1 250000 250000 263808 5 10 |
45250000 1 250000 250000 263808 5 10 |
45269046 1 217002 173624 182999 26 19 |
45500000 1 250000 250000 263833 5 10 |
45586048 1 2506002 1214577 1284576 30 21 |
45586048 1 279002 62021 64904 88 1 |
45750000 1 250000 250000 263891 5 10 |
45965050 1 587002 531557 561798 13 24 |
45965050 1 1808002 930618 984045 34 28 |
46000000 1 250000 250000 263790 5 10 |
46250000 1 250000 250000 263790 5 10 |
46500000 1 250000 250000 263790 5 10 |
46750000 1 250000 250000 263790 5 10 |
47000000 1 250000 250000 263790 5 10 |
47250000 1 250000 250000 263790 5 10 |
47500000 1 250000 250000 263790 5 10 |
47750000 1 250000 250000 263790 5 10 |
47873052 1 1739002 311765 329190 82 63 |
48000000 1 250000 250000 263808 5 10 |
48250000 1 250000 250000 263808 5 10 |
48500000 1 250000 250000 263808 5 10 |
48750000 1 250000 250000 263808 5 10 |
49000000 1 1800000 522000 551654 80 90 |
49000000 1 90000 26100 26907 5 10 |
49000040 0 96000 49280 51422 0 0 |
49000208 0 75000 14750 14896 0 0 |
49090000 1 90000 26100 26907 5 10 |
49180000 1 90000 26100 26907 5 10 |
49270000 1 90000 26100 26907 5 10 |
49360000 1 90000 26100 26907 5 10 |
49450000 1 90000 26100 26907 5 10 |
49540000 1 90000 26100 26907 5 10 |
49630000 1 90000 26100 26907 5 10 |
49712054 1 1826002 1038627 1098393 4 17 |
49712054 1 6002 3398 2881 58 90 |
49712054 1 2705002 86154 90468 13 43 |
49720000 1 90000 26100 26899 5 10 |
49810000 1 90000 26100 26899 5 10 |
49900000 1 90000 26100 26899 5 10 |
49990000 1 90000 26100 26899 5 10 |
50080000 1 90000 26100 26899 5 10 |
50170000 1 90000 26100 26899 5 10 |
50260000 1 90000 26100 26899 5 10 |
50350000 1 90000 26100 26899 5 10 |
50440000 1 90000 26100 26899 5 10 |
50530000 1 90000 26100 26899 5 10 |
50620000 1 90000 26100 26899 5 10 |
50710000 1 90000 26100 26899 5 10 |
50800000 1 1800000 522000 551668 80 90 |
50800000 1 90000 26100 26907 5 10 |
50890000 1 90000 26100 26907 5 10 |
50980000 1 90000 26100 26907 5 10 |
51070000 1 90000 26100 26907 5 10 |
51160000 1 90000 26100 26907 5 10 |
51250000 1 90000 26100 26907 5 10 |
51340000 1 90000 26100 26907 5 10 |
51430000 1 90000 26100 26907 5 10 |
51520000 1 90000 26100 26907 5 10 |
51610000 1 90000 26100 26907 5 10 |
51700000 1 90000 26100 26907 5 10 |
51790000 1 90000 26100 26907 5 10 |
51880000 1 90000 26100 26907 5 10 |
51970000 1 90000 26100 26907 5 10 |
52060000 1 90000 26100 26907 5 10 |
52150000 1 90000 26100 26907 5 10 |
52240000 1 90000 26100 26907 5 10 |
52330000 1 90000 26100 26907 5 10 |
52420000 1 90000 26100 26907 5 10 |
52510000 1 90000 26100 26907 5 10 |
52517056 1 1748002 1410488 1491893 20 18 |
52600000 1 1800000 522000 551647 80 90 |
52600000 1 90000 26100 26901 5 10 |
52690000 1 90000 26100 26901 5 10 |
52780000 1 90000 26100 26901 5 10 |
52870000 1 90000 26100 26901 5 10 |
52960000 1 90000 26100 26901 5 10 |
53050000 1 90000 26100 26901 5 10 |
53140000 1 90000 26100 26901 5 10 |
53230000 1 90000 26100 26901 5 10 |
53320000 1 90000 26100 26901 5 10 |
53410000 1 90000 26100 26901 5 10 |
53500000 1 90000 26100 26901 5 10 |
53590000 1 90000 26100 26901 5 10 |
53680000 1 90000 26100 26901 5 10 |
53770000 1 90000 26100 26901 5 10 |
53860000 1 90000 26100 26901 5 10 |
53950000 1 90000 26100 26901 5 10 |
54040000 1 90000 26100 26901 5 10 |
54130000 1 90000 26100 26901 5 10 |
54220000 1 90000 26100 26901 5 10 |
54310000 1 90000 26100 26901 5 10 |
54365058 1 150002 103582 108873 65 28 |
54365058 1 2224002 360929 381223 65 26 |
54400000 1 1800000 522000 551690 80 90 |
54400000 1 90000 26100 26898 5 10 |
54490000 1 90000 26100 26898 5 10 |
54580000 1 90000 26100 26898 5 10 |
54670000 1 90000 26100 26898 5 10 |
54760000 1 90000 26100 26898 5 10 |
54850000 1 90000 26100 26898 5 10 |
54940000 1 90000 26100 26898 5 10 |
55030000 1 90000 26100 26898 5 10 |
55075318 0 99000 8532 8312 0 0 |
55075483 0 70000 6779 6459 0 0 |
55120000 1 90000 26100 26898 5 10 |
55210000 1 90000 26100 26898 5 10 |
55300000 1 90000 26100 26898 5 10 |
55390000 1 90000 26100 26898 5 10 |
55480000 1 90000 26100 26898 5 10 |
55570000 1 90000 26100 26898 5 10 |
55660000 1 90000 26100 26898 5 10 |
55750000 1 90000 26100 26898 5 10 |
55840000 1 90000 26100 26898 5 10 |
55930000 1 90000 26100 26898 5 10 |
56020000 1 90000 26100 26898 5 10 |
56110000 1 90000 26100 26898 5 10 |
56200000 1 1800000 522000 551656 80 90 |
56200000 1 90000 26100 26909 5 10 |
56290000 1 90000 26100 26909 5 10 |
56380000 1 90000 26100 26909 5 10 |
56470000 1 90000 26100 26909 5 10 |
56560000 1 90000 26100 26909 5 10 |
56650000 1 90000 26100 26909 5 10 |
56689060 1 1158002 1083915 1146315 18 71 |
56740000 1 90000 26100 26899 5 10 |
56776117 0 99000 39534 41127 0 0 |
56776287 0 47000 4216 3745 0 0 |
56776453 0 90000 2250 1666 0 0 |
56830000 1 90000 26100 26899 5 10 |
56920000 1 90000 26100 26899 5 10 |
57010000 1 90000 26100 26899 5 10 |
57100000 1 90000 26100 26899 5 10 |
57190000 1 90000 26100 26899 5 10 |
57280000 1 90000 26100 26899 5 10 |
57370000 1 90000 26100 26899 5 10 |
57460000 1 90000 26100 26899 5 10 |
57550000 1 90000 26100 26899 5 10 |
57640000 1 90000 26100 26899 5 10 |
57730000 1 90000 26100 26899 5 10 |
57820000 1 90000 26100 26899 5 10 |
57910000 1 90000 26100 26899 5 10 |
57947062 1 856002 462631 488882 51 81 |
58000000 1 3200000 2304000 2437427 80 90 |
58000000 1 160000 115200 121166 5 10 |
58160000 1 160000 115200 121166 5 10 |
58320000 1 160000 115200 121166 5 10 |
58480000 1 160000 115200 121166 5 10 |
58640000 1 160000 115200 121166 5 10 |
58800000 1 160000 115200 121166 5 10 |
58903064 1 855002 663196 701079 32 81 |
58960000 1 160000 115200 121203 5 10 |
59120000 1 160000 115200 121203 5 10 |
59280000 1 160000 115200 121203 5 10 |
59440000 1 160000 115200 121203 5 10 |
59600000 1 160000 115200 121203 5 10 |
59760000 1 160000 115200 121203 5 10 |
59858066 1 2848002 1930317 2041981 61 33 |
59858066 1 2867002 1697032 1795106 63 60 |
59858066 1 1168002 437978 462780 2 35 |
59858066 1 2067002 1079046 1141152 22 7 |
59858066 1 1476002 1039252 1099044 42 35 |
59920000 1 160000 115200 121161 5 10 |
60080000 1 160000 115200 121161 5 10 |
60240000 1 160000 115200 121161 5 10 |
60400000 1 160000 115200 121161 5 10 |
60560000 1 160000 115200 121161 5 10 |
60720000 1 160000 115200 121161 5 10 |
60880000 1 160000 115200 121161 5 10 |
61040000 1 160000 115200 121161 5 10 |
61200000 1 3200000 2304000 2437449 80 90 |
61200000 1 160000 115200 121164 5 10 |
61360000 1 160000 115200 121164 5 10 |
61434068 1 1096002 936145 989908 94 93 |
61434068 1 32002 30918 31996 1 31 |
61520000 1 160000 115200 121172 5 10 |
61566070 1 1328002 840830 889053 94 57 |
61566070 1 558002 381573 403050 50 49 |
61566070 1 2257002 872000 922068 76 61 |
61566070 1 826002 477837 504938 78 87 |
61680000 1 160000 115200 121206 5 10 |
61840000 1 160000 115200 121206 5 10 |
62000000 1 160000 115200 121206 5 10 |
62160000 1 160000 115200 121206 5 10 |
62320000 1 160000 115200 121206 5 10 |
62480000 1 160000 115200 121206 5 10 |
62492072 1 2468002 2087746 2208592 42 17 |
62640000 1 160000 115200 121176 5 10 |
62800000 1 160000 115200 121176 5 10 |
62960000 1 160000 115200 121176 5 10 |
63120000 1 160000 115200 121176 5 10 |
63280000 1 160000 115200 121176 5 10 |
63440000 1 160000 115200 121176 5 10 |
63600000 1 160000 115200 121176 5 10 |
63760000 1 160000 115200 121176 5 10 |
63920000 1 160000 115200 121176 5 10 |
64080000 1 160000 115200 121176 5 10 |
64240000 1 160000 115200 121176 5 10 |
64400000 1 3200000 2304000 2437408 80 90 |
64400000 1 160000 115200 121174 5 10 |
64560000 1 160000 115200 121174 5 10 |
64720000 1 160000 115200 121174 5 10 |
64795164 0 99000 12147 12140 0 0 |
64795332 0 82000 8262 8025 0 0 |
64795497 0 82000 2961 2418 0 0 |
64880000 1 160000 115200 121174 5 10 |
65040000 1 160000 115200 121174 5 10 |
65060074 1 1997002 747316 790126 21 70 |
65200000 1 160000 115200 121174 5 10 |
65360000 1 160000 115200 121174 5 10 |
65520000 1 160000 115200 121174 5 10 |
65680000 1 160000 115200 121174 5 10 |
65840000 1 160000 115200 121174 5 10 |
66000000 1 160000 115200 121174 5 10 |
66160000 1 160000 115200 121174 5 10 |
66320000 1 160000 115200 121174 5 10 |
66480000 1 160000 115200 121174 5 10 |
66640000 1 160000 115200 121174 5 10 |
66800000 1 160000 115200 121174 5 10 |
66960000 1 160000 115200 121174 5 10 |
67120000 1 160000 115200 121174 5 10 |
67157076 1 1549002 658208 695808 7 71 |
67280000 1 160000 115200 121204 5 10 |
67440000 1 160000 115200 121204 5 10 |
67600000 1 3200000 2304000 2437443 80 90 |
67600000 1 160000 115200 121169 5 10 |
67760000 1 160000 115200 121169 5 10 |
67920000 1 160000 115200 121169 5 10 |
68080000 1 160000 115200 121169 5 10 |
68240000 1 160000 115200 121169 5 10 |
68400000 1 160000 115200 121169 5 10 |
68560000 1 160000 115200 121169 5 10 |
68720000 1 160000 115200 121169 5 10 |
68806078 1 348002 307802 325017 24 26 |
68806078 1 987002 116089 122151 29 49 |
68880000 1 160000 115200 121203 5 10 |
69040000 1 160000 115200 121203 5 10 |
69200000 1 160000 115200 121203 5 10 |
69360000 1 160000 115200 121203 5 10 |
69520000 1 160000 115200 121203 5 10 |
69680000 1 160000 115200 121203 5 10 |
69840000 1 160000 115200 121203 5 10 |
69893080 1 1128002 266659 281501 37 88 |
69893080 1 2255002 1966070 2079803 25 77 |
69893080 1 2531002 2112468 2234698 1 56 |
70000000 1 160000 115200 121206 5 10 |
70160000 1 160000 115200 121206 5 10 |
70320000 1 160000 115200 121206 5 10 |
70480000 1 160000 115200 121206 5 10 |
70640000 1 160000 115200 121206 5 10 |
70800000 1 3200000 2304000 2437423 80 90 |
70800000 1 160000 115200 121214 5 10 |
70960000 1 160000 115200 121214 5 10 |
71120000 1 160000 115200 121214 5 10 |
71280000 1 160000 115200 121214 5 10 |
71437416 0 68000 5175 4760 0 0 |
71437573 0 66000 5284 4876 0 0 |
71440000 1 160000 115200 121214 5 10 |
71600000 1 160000 115200 121214 5 10 |
71760000 1 160000 115200 121214 5 10 |
71920000 1 160000 115200 121214 5 10 |
72080000 1 160000 115200 121214 5 10 |
72240000 1 160000 115200 121214 5 10 |
72400000 1 160000 115200 121214 5 10 |
72524082 1 74002 28416 29351 75 57 |
72524082 1 1369002 944728 999039 95 55 |
72524082 1 2658002 564240 596380 65 1 |
72524082 1 2880002 344142 363445 23 79 |
72524082 1 1667002 485209 512765 8 23 |
72524082 1 1833002 835588 883515 48 19 |
72560000 1 160000 115200 121166 5 10 |
72720000 1 160000 115200 121166 5 10 |
72814272 0 99000 5372 4968 0 0 |
72814559 0 90000 3320 2798 0 0 |
72814724 0 85000 2125 1534 0 0 |
72880000 1 160000 115200 121166 5 10 |
73040000 1 160000 115200 121166 5 10 |
73200000 1 160000 115200 121166 5 10 |
73360000 1 160000 115200 121166 5 10 |
73520000 1 160000 115200 121166 5 10 |
73680000 1 160000 115200 121166 5 10 |
73840000 1 160000 115200 121166 5 10 |
74000000 1 5600000 3080000 3258634 80 90 |
74000000 1 280000 154000 162257 5 10 |
74000039 0 78000 6968 6659 0 0 |
74000182 0 71000 5344 4941 0 0 |
74280000 1 280000 154000 162257 5 10 |
74457084 1 790002 786572 831626 45 80 |
74560000 1 280000 154000 162219 5 10 |
74840000 1 280000 154000 162219 5 10 |
75120000 1 280000 154000 162219 5 10 |
75347086 1 41002 30969 32062 43 90 |
75347086 1 336002 63459 66448 34 22 |
75400000 1 280000 154000 162216 5 10 |
75680000 1 280000 154000 162216 5 10 |
75783088 1 1291002 1008318 1066323 31 64 |
75783088 1 2106002 1883656 1992568 43 77 |
75783088 1 1976002 1845195 1951881 84 39 |
75783088 1 2721002 1377766 1457252 78 89 |
75783088 1 281002 202534 213573 69 46 |
75960000 1 280000 154000 162225 5 10 |
76164090 1 1742002 1186725 1255082 94 22 |
76240000 1 280000 154000 162220 5 10 |
76520000 1 280000 154000 162220 5 10 |
76783641 0 82000 4878 4447 0 0 |
76783809 0 88000 2200 1613 0 0 |
76800000 1 280000 154000 162220 5 10 |
76945487 0 73000 4987 4561 0 0 |
77080000 1 280000 154000 162220 5 10 |
77360000 1 280000 154000 162220 5 10 |
77640000 1 280000 154000 162220 5 10 |
77920000 1 280000 154000 162220 5 10 |
78006092 1 506002 369708 390537 96 47 |
78200000 1 280000 154000 162210 5 10 |
78480000 1 280000 154000 162210 5 10 |
78612094 1 1664002 1052871 1113424 69 16 |
78760000 1 280000 154000 162272 5 10 |
79040000 1 280000 154000 162272 5 10 |
79320000 1 280000 154000 162272 5 10 |
79600000 1 5600000 3080000 3258608 80 90 |
79600000 1 280000 154000 162274 5 10 |
79699818 0 60000 1500 872 0 0 |
79751258 0 66000 1650 1031 0 0 |
79751418 0 70000 4093 3615 0 0 |
79880000 1 280000 154000 162274 5 10 |
80104634 0 73000 2655 2094 0 0 |
80160000 1 280000 154000 162274 5 10 |
80318239 0 70000 6018 5654 0 0 |
80376096 1 2455002 239185 252431 18 83 |
80376096 1 2060002 1651940 1747402 83 73 |
80440000 1 280000 154000 162262 5 10 |
80720000 1 280000 154000 162262 5 10 |
80833353 0 78000 4576 4127 0 0 |
81000000 1 280000 154000 162262 5 10 |
81280000 1 280000 154000 162262 5 10 |
81560000 1 280000 154000 162262 5 10 |
81840000 1 280000 154000 162262 5 10 |
82120000 1 280000 154000 162262 5 10 |
82400000 1 280000 154000 162262 5 10 |
82536098 1 1593002 899992 951670 49 86 |
82536098 1 2902002 1003444 1061128 19 69 |
82680000 1 280000 154000 162221 5 10 |
82858607 0 82000 3982 3499 0 0 |
82858755 0 75000 1875 1269 0 0 |
82960000 1 280000 154000 162221 5 10 |
83240000 1 280000 154000 162221 5 10 |
83425728 0 87000 3058 2520 0 0 |
83425935 0 68000 1700 1084 0 0 |
83520000 1 280000 154000 162221 5 10 |
83800000 1 280000 154000 162221 5 10 |
83912035 0 78000 1950 1349 0 0 |
84080000 1 280000 154000 162221 5 10 |
84360000 1 280000 154000 162221 5 10 |
84560013 0 74000 1850 1243 0 0 |
84640000 1 280000 154000 162221 5 10 |
84920000 1 280000 154000 162221 5 10 |
85097318 0 93000 2325 1746 0 0 |
85200000 1 5600000 3080000 3258645 80 90 |
85200000 1 280000 154000 162274 5 10 |
85421481 0 80000 3236 2709 0 0 |
85480000 1 280000 154000 162274 5 10 |
85538100 1 1686002 10299 10182 35 84 |
85538100 1 2046002 1842815 1949385 89 71 |
85760000 1 280000 154000 162218 5 10 |
85988355 0 98000 4637 4190 0 0 |
85988562 0 78000 3220 2692 0 0 |
86017733 0 98000 2450 1877 0 0 |
86017880 0 85000 2125 1534 0 0 |
86040000 1 280000 154000 162218 5 10 |
86320000 1 280000 154000 162218 5 10 |
86600000 1 280000 154000 162218 5 10 |
86880000 1 280000 154000 162218 5 10 |
87151424 0 75000 3564 3056 0 0 |
87160000 1 280000 154000 162218 5 10 |
87440000 1 280000 154000 162218 5 10 |
87684102 1 950002 46646 48639 1 93 |
87684102 1 1675002 693268 732923 54 19 |
87720000 1 280000 154000 162265 5 10 |
88000000 1 280000 154000 162265 5 10 |
88280000 1 280000 154000 162265 5 10 |
88560000 1 280000 154000 162265 5 10 |
88840000 1 280000 154000 162265 5 10 |
88933839 0 68000 2509 1940 0 0 |
88934080 0 89000 2225 1640 0 0 |
89120000 1 280000 154000 162265 5 10 |
89400000 1 280000 154000 162265 5 10 |
89459104 1 768002 168011 177085 51 84 |
89459104 1 2652002 1318274 1394333 41 33 |
89500800 0 84000 2627 2065 0 0 |
89680000 1 280000 154000 162216 5 10 |
89960000 1 280000 154000 162216 5 10 |
90230127 0 93000 2325 1745 0 0 |
90240000 1 280000 154000 162216 5 10 |
90472780 0 90000 2637 2074 0 0 |
90472975 0 86000 2150 1560 0 0 |
90520000 1 280000 154000 162216 5 10 |
90554060 0 76000 1900 1296 0 0 |
90800000 1 5600000 3080000 3258650 80 90 |
90800000 1 280000 154000 162225 5 10 |
91080000 1 280000 154000 162225 5 10 |
91360000 1 280000 154000 162225 5 10 |
91640000 1 280000 154000 162225 5 10 |
91901533 0 87000 2175 1586 0 0 |
91920000 1 280000 154000 162225 5 10 |
92200000 1 280000 154000 162225 5 10 |
92211106 1 145002 129480 136278 81 5 |
92306606 0 89000 2784 2231 0 0 |
92306959 0 73000 1825 1216 0 0 |
92456108 1 1380002 1124915 1189676 23 1 |
92480000 1 280000 154000 162289 5 10 |
92630418 0 84000 2100 1507 0 0 |
92760000 1 280000 154000 162289 5 10 |
92903116 0 69000 1725 1111 0 0 |
93040000 1 280000 154000 162289 5 10 |
93226690 0 94000 2790 2237 0 0 |
93320000 1 280000 154000 162289 5 10 |
93600000 1 280000 154000 162289 5 10 |
93880000 1 280000 154000 162289 5 10 |
93926444 0 73000 3916 3427 0 0 |
93936110 1 2777002 1595969 1688155 57 47 |
93955802 0 40000 1000 343 0 0 |
94160000 1 280000 154000 162225 5 10 |
94440000 1 280000 154000 162225 5 10 |
94441907 0 86000 2488 1918 0 0 |
94720000 1 280000 154000 162225 5 10 |
95000000 1 280000 154000 162225 5 10 |
95280000 1 280000 154000 162225 5 10 |
95560000 1 280000 154000 162225 5 10 |
95840000 1 280000 154000 162225 5 10 |
96120000 1 280000 154000 162225 5 10 |
96143345 0 66000 2986 2443 0 0 |
96304847 0 99000 2475 1904 0 0 |
96400000 1 5600000 3080000 3258652 80 90 |
96400000 1 280000 154000 162214 5 10 |
96680000 1 280000 154000 162214 5 10 |
96710173 0 86000 2150 1561 0 0 |
96813112 1 1458002 1103572 1167136 50 37 |
96813112 1 1168002 718904 760013 50 63 |
96960000 1 280000 154000 162218 5 10 |
97195858 0 97000 2425 1851 0 0 |
97240000 1 280000 154000 162218 5 10 |
97439161 0 92000 2300 1719 0 0 |
97520000 1 280000 154000 162218 5 10 |
97762836 0 92000 2300 1719 0 0 |
97763243 0 71000 2191 1603 0 0 |
97800000 1 280000 154000 162218 5 10 |
98080000 1 280000 154000 162218 5 10 |
98081114 1 2107002 1959110 2072468 4 99 |
98081114 1 1347002 1195722 1264606 57 34 |
98081114 1 1987002 1254103 1326407 22 50 |
98220054 0 73000 1825 1216 0 0 |
98360000 1 280000 154000 162222 5 10 |
98492233 0 96000 2400 1825 0 0 |
98640000 1 280000 154000 162222 5 10 |
98920000 1 280000 154000 162222 5 10 |
98948616 0 82000 2050 1455 0 0 |
99200000 1 280000 154000 162222 5 10 |
99434494 0 97000 2425 1851 0 0 |
99480000 1 280000 154000 162222 5 10 |
99515691 0 76000 2070 1475 0 0 |
99760000 1 280000 154000 162222 5 10 |
99839614 0 86000 3148 2616 0 0 |
99839785 0 91000 2275 1692 0 0 |
100040000 1 280000 154000 162222 5 10 |
100168116 1 1460002 1276815 1350410 35 45 |
100168116 1 1233002 811625 858155 36 38 |
100168116 1 1572002 549837 581157 46 69 |
100168116 1 2977002 805176 851368 31 11 |
100320000 1 280000 154000 162222 5 10 |
100600000 1 280000 154000 162222 5 10 |
100840751 0 78000 1950 1348 0 0 |
100880000 1 280000 154000 162222 5 10 |
101160000 1 280000 154000 162222 5 10 |
101407970 0 90000 2250 1666 0 0 |
101440000 1 280000 154000 162222 5 10 |
101489499 0 91000 2610 2047 0 0 |
101489642 0 69000 1725 1110 0 0 |
101720000 1 280000 154000 162222 5 10 |
102000000 1 3800000 2926000 3095629 80 90 |
102000000 1 190000 146300 154071 5 10 |
102190000 1 190000 146300 154071 5 10 |
102380000 1 190000 146300 154071 5 10 |
102570000 1 190000 146300 154071 5 10 |
102760000 1 190000 146300 154071 5 10 |
102950000 1 190000 146300 154071 5 10 |
103140000 1 190000 146300 154071 5 10 |
103245118 1 818002 82058 86133 54 97 |
103245118 1 1107002 77945 81784 71 16 |
103245118 1 697002 185308 195398 39 20 |
103245118 1 2107002 62104 65015 89 100 |
103330000 1 190000 146300 154069 5 10 |
103520000 1 190000 146300 154069 5 10 |
103710000 1 190000 146300 154069 5 10 |
103900000 1 190000 146300 154069 5 10 |
104090000 1 190000 146300 154069 5 10 |
104280000 1 190000 146300 154069 5 10 |
104470000 1 190000 146300 154069 5 10 |
104660000 1 190000 146300 154069 5 10 |
104850000 1 190000 146300 154069 5 10 |
105040000 1 190000 146300 154069 5 10 |
105230000 1 190000 146300 154069 5 10 |
105420000 1 190000 146300 154069 5 10 |
105452120 1 779002 231364 244089 79 75 |
105610000 1 190000 146300 154071 5 10 |
105800000 1 3800000 2926000 3095659 80 90 |
105800000 1 190000 146300 154122 5 10 |
105990000 1 190000 146300 154122 5 10 |
106180000 1 190000 146300 154122 5 10 |
106268284 0 100000 2500 1931 0 0 |
106331122 1 443002 5641 5253 69 72 |
106331122 1 1665002 942364 996515 72 16 |
106331122 1 2739002 709436 749996 58 27 |
106370000 1 190000 146300 154067 5 10 |
106560000 1 190000 146300 154067 5 10 |
106750000 1 190000 146300 154067 5 10 |
106805664 0 82000 2688 2129 0 0 |
106940000 1 190000 146300 154067 5 10 |
107078723 0 92000 2300 1719 0 0 |
107130000 1 190000 146300 154067 5 10 |
107158817 0 59000 1599 977 0 0 |
107210837 0 78000 2281 1698 0 0 |
107291765 0 75000 2130 1539 0 0 |
107320000 1 190000 146300 154067 5 10 |
107510000 1 190000 146300 154067 5 10 |
107700000 1 190000 146300 154067 5 10 |
107890000 1 190000 146300 154067 5 10 |
108080000 1 190000 146300 154067 5 10 |
108270000 1 190000 146300 154067 5 10 |
108460000 1 190000 146300 154067 5 10 |
108650000 1 190000 146300 154067 5 10 |
108698025 0 71000 2044 1448 0 0 |
108840000 1 190000 146300 154067 5 10 |
108860692 0 67000 2159 1570 0 0 |
109030000 1 190000 146300 154067 5 10 |
109170124 1 2455002 1961694 2075195 75 86 |
109170124 1 2898002 85762 90049 53 26 |
109170124 1 2648002 691495 731060 8 24 |
109170124 1 267002 21664 22204 27 50 |
109170124 1 1450002 361880 382219 13 62 |
109220000 1 190000 146300 154125 5 10 |
109410000 1 190000 146300 154125 5 10 |
109600000 1 3800000 2926000 3095578 80 90 |
109600000 1 190000 146300 154124 5 10 |
109790000 1 190000 146300 154124 5 10 |
109980000 1 190000 146300 154124 5 10 |
110170000 1 190000 146300 154124 5 10 |
110360000 1 190000 146300 154124 5 10 |
110550000 1 190000 146300 154124 5 10 |
110720126 1 2706002 487696 515419 33 31 |
110740000 1 190000 146300 154071 5 10 |
110930000 1 190000 146300 154071 5 10 |
111120000 1 190000 146300 154071 5 10 |
111310000 1 190000 146300 154071 5 10 |
111500000 1 190000 146300 154071 5 10 |
111690000 1 190000 146300 154071 5 10 |
111880000 1 190000 146300 154071 5 10 |
111937866 0 78000 1950 1348 0 0 |
112070000 1 190000 146300 154071 5 10 |
112260000 1 190000 146300 154071 5 10 |
112450000 1 190000 146300 154071 5 10 |
112640000 1 190000 146300 154071 5 10 |
112830000 1 190000 146300 154071 5 10 |
113020000 1 190000 146300 154071 5 10 |
113210000 1 190000 146300 154071 5 10 |
113366926 0 72000 1906 1301 0 0 |
113400000 1 3800000 2926000 3095624 80 90 |
113400000 1 190000 146300 154076 5 10 |
113447731 0 73000 2251 1666 0 0 |
113526128 1 1361002 1081105 1143354 37 24 |
113526128 1 2774002 2640963 2793983 86 84 |
113526128 1 565002 425383 449435 79 9 |
113526128 1 930002 281633 297330 43 94 |
113526128 1 1967002 288096 304103 55 51 |
113526128 1 1141002 1093302 1156229 73 36 |
113529103 0 74000 2128 1536 0 0 |
113590000 1 190000 146300 154127 5 10 |
113780000 1 190000 146300 154127 5 10 |
113970000 1 190000 146300 154127 5 10 |
114160000 1 190000 146300 154127 5 10 |
114287808 0 77000 2239 1654 0 0 |
114350000 1 190000 146300 154127 5 10 |
114368339 0 93000 2325 1746 0 0 |
114449100 0 88000 2200 1613 0 0 |
114530807 0 88000 2200 1613 0 0 |
114540000 1 190000 146300 154127 5 10 |
114730000 1 190000 146300 154127 5 10 |
114767130 1 1422002 171812 181120 36 66 |
114920000 1 190000 146300 154080 5 10 |
115110000 1 190000 146300 154080 5 10 |
115300000 1 190000 146300 154080 5 10 |
115490000 1 190000 146300 154080 5 10 |
115680000 1 190000 146300 154080 5 10 |
115870000 1 190000 146300 154080 5 10 |
116060000 1 190000 146300 154080 5 10 |
116250000 1 190000 146300 154080 5 10 |
116289132 1 1438002 1068638 1130145 92 83 |
116440000 1 190000 146300 154120 5 10 |
116630000 1 190000 146300 154120 5 10 |
116820000 1 190000 146300 154120 5 10 |
117010000 1 190000 146300 154120 5 10 |
117200000 1 3800000 2926000 3095640 80 90 |
117200000 1 190000 146300 154122 5 10 |
117390000 1 190000 146300 154122 5 10 |
117580000 1 190000 146300 154122 5 10 |
117770000 1 190000 146300 154122 5 10 |
117827134 1 1934002 918431 971185 92 1 |
117960000 1 190000 146300 154067 5 10 |
118150000 1 190000 146300 154067 5 10 |
118255950 0 80000 2139 1549 0 0 |
118340000 1 190000 146300 154067 5 10 |
118530000 1 190000 146300 154067 5 10 |
118720000 1 190000 146300 154067 5 10 |
118910000 1 190000 146300 154067 5 10 |
119100000 1 190000 146300 154067 5 10 |
119198984 0 80000 2125 1533 0 0 |
119290000 1 190000 146300 154067 5 10 |
119360788 0 92000 2300 1719 0 0 |
119480000 1 190000 146300 154067 5 10 |
119523155 0 84000 2435 1862 0 0 |
119670000 1 190000 146300 154067 5 10 |
119860000 1 190000 146300 154067 5 10 |
119861136 1 646002 401618 424282 8 45 |
119861136 1 156002 51422 53690 93 26 |
120050000 1 190000 146300 154124 5 10 |
120240000 1 190000 146300 154124 5 10 |
120430000 1 190000 146300 154124 5 10 |
120524902 0 89000 2302 1720 0 0 |
120620000 1 190000 146300 154124 5 10 |
120810000 1 190000 146300 154124 5 10 |
/unsupported/trunk/crunch/load/120_1/vpattern.dat |
---|
0,0 → 1,868 |
867 |
1000000 3600000 792000 837402 80 90 |
1000000 180000 39600 41185 5 10 |
1000000 948002 482431 509820 73 73 |
1000000 1005002 667004 705086 61 21 |
1180000 180000 39600 41182 5 10 |
1360000 180000 39600 41182 5 10 |
1540000 180000 39600 41182 5 10 |
1720000 180000 39600 41182 5 10 |
1900000 180000 39600 41182 5 10 |
2080000 180000 39600 41182 5 10 |
2105002 424002 113189 119082 85 64 |
2260000 180000 39600 41183 5 10 |
2440000 180000 39600 41183 5 10 |
2620000 180000 39600 41183 5 10 |
2629004 2690002 1271063 1344382 17 41 |
2800000 180000 39600 41195 5 10 |
2980000 180000 39600 41195 5 10 |
3160000 180000 39600 41195 5 10 |
3340000 180000 39600 41195 5 10 |
3520000 180000 39600 41195 5 10 |
3700000 180000 39600 41195 5 10 |
3880000 180000 39600 41195 5 10 |
4060000 180000 39600 41195 5 10 |
4240000 180000 39600 41195 5 10 |
4420000 180000 39600 41195 5 10 |
4600000 3600000 792000 837447 80 90 |
4600000 180000 39600 41180 5 10 |
4780000 180000 39600 41180 5 10 |
4960000 180000 39600 41180 5 10 |
5140000 180000 39600 41180 5 10 |
5320000 180000 39600 41180 5 10 |
5419006 2084002 157190 165589 94 29 |
5500000 180000 39600 41181 5 10 |
5680000 180000 39600 41181 5 10 |
5860000 180000 39600 41181 5 10 |
6040000 180000 39600 41181 5 10 |
6220000 180000 39600 41181 5 10 |
6400000 180000 39600 41181 5 10 |
6580000 180000 39600 41181 5 10 |
6760000 180000 39600 41181 5 10 |
6940000 180000 39600 41181 5 10 |
7120000 180000 39600 41181 5 10 |
7300000 180000 39600 41181 5 10 |
7480000 180000 39600 41181 5 10 |
7603008 2663002 2506134 2651322 24 42 |
7660000 180000 39600 41183 5 10 |
7840000 180000 39600 41183 5 10 |
8020000 180000 39600 41183 5 10 |
8200000 3600000 792000 837400 80 90 |
8200000 180000 39600 41177 5 10 |
8380000 180000 39600 41177 5 10 |
8560000 180000 39600 41177 5 10 |
8740000 180000 39600 41177 5 10 |
8920000 180000 39600 41177 5 10 |
9100000 180000 39600 41177 5 10 |
9280000 180000 39600 41177 5 10 |
9460000 180000 39600 41177 5 10 |
9640000 180000 39600 41177 5 10 |
9820000 180000 39600 41177 5 10 |
10000000 180000 39600 41177 5 10 |
10180000 180000 39600 41177 5 10 |
10360000 180000 39600 41177 5 10 |
10366010 1902002 1718177 1817503 36 33 |
10540000 180000 39600 41182 5 10 |
10720000 180000 39600 41182 5 10 |
10900000 180000 39600 41182 5 10 |
11080000 180000 39600 41182 5 10 |
11260000 180000 39600 41182 5 10 |
11440000 180000 39600 41182 5 10 |
11620000 180000 39600 41182 5 10 |
11800000 3600000 792000 837396 80 90 |
11800000 180000 39600 41183 5 10 |
11980000 180000 39600 41183 5 10 |
12160000 180000 39600 41183 5 10 |
12340000 180000 39600 41183 5 10 |
12368012 2920002 1675238 1772061 10 5 |
12368012 2569002 2400619 2539657 51 88 |
12520000 180000 39600 41183 5 10 |
12700000 180000 39600 41183 5 10 |
12880000 180000 39600 41183 5 10 |
13060000 180000 39600 41183 5 10 |
13240000 180000 39600 41183 5 10 |
13420000 180000 39600 41183 5 10 |
13600000 180000 39600 41183 5 10 |
13780000 180000 39600 41183 5 10 |
13960000 180000 39600 41183 5 10 |
14140000 180000 39600 41183 5 10 |
14320000 180000 39600 41183 5 10 |
14500000 180000 39600 41183 5 10 |
14680000 180000 39600 41183 5 10 |
14860000 180000 39600 41183 5 10 |
15037014 480002 45079 46999 43 49 |
15037014 857002 734926 776975 26 80 |
15040000 180000 39600 41198 5 10 |
15220000 180000 39600 41198 5 10 |
15400000 3600000 792000 837401 80 90 |
15400000 180000 39600 41197 5 10 |
15580000 180000 39600 41197 5 10 |
15760000 180000 39600 41197 5 10 |
15940000 180000 39600 41197 5 10 |
15994016 1629002 830859 878529 98 10 |
15994016 2582002 350306 370027 27 13 |
15994016 2190002 13750 13833 59 86 |
16120000 180000 39600 41182 5 10 |
16300000 180000 39600 41182 5 10 |
16480000 180000 39600 41182 5 10 |
16660000 180000 39600 41182 5 10 |
16840000 180000 39600 41182 5 10 |
17020000 180000 39600 41182 5 10 |
17200000 180000 39600 41182 5 10 |
17380000 180000 39600 41182 5 10 |
17560000 180000 39600 41182 5 10 |
17740000 180000 39600 41182 5 10 |
17920000 180000 39600 41182 5 10 |
18100000 180000 39600 41182 5 10 |
18280000 180000 39600 41182 5 10 |
18284018 1352002 323167 341261 72 41 |
18460000 180000 39600 41192 5 10 |
18640000 180000 39600 41192 5 10 |
18820000 180000 39600 41192 5 10 |
19000000 1000000 260000 274465 80 90 |
19000000 50000 13000 13044 5 10 |
19050000 50000 13000 13044 5 10 |
19100000 50000 13000 13044 5 10 |
19150000 50000 13000 13044 5 10 |
19200000 50000 13000 13044 5 10 |
19250000 50000 13000 13044 5 10 |
19300000 50000 13000 13044 5 10 |
19350000 50000 13000 13044 5 10 |
19400000 50000 13000 13044 5 10 |
19450000 50000 13000 13044 5 10 |
19500000 50000 13000 13044 5 10 |
19550000 50000 13000 13044 5 10 |
19600000 50000 13000 13044 5 10 |
19650000 50000 13000 13044 5 10 |
19700000 50000 13000 13044 5 10 |
19736020 1031002 556354 588001 46 94 |
19750000 50000 13000 13040 5 10 |
19800000 50000 13000 13040 5 10 |
19850000 50000 13000 13040 5 10 |
19900000 50000 13000 13040 5 10 |
19950000 50000 13000 13040 5 10 |
20000000 1000000 260000 274439 80 90 |
20000000 50000 13000 13045 5 10 |
20050000 50000 13000 13045 5 10 |
20100000 50000 13000 13045 5 10 |
20150000 50000 13000 13045 5 10 |
20200000 50000 13000 13045 5 10 |
20250000 50000 13000 13045 5 10 |
20300000 50000 13000 13045 5 10 |
20350000 50000 13000 13045 5 10 |
20400000 50000 13000 13045 5 10 |
20450000 50000 13000 13045 5 10 |
20500000 50000 13000 13045 5 10 |
20550000 50000 13000 13045 5 10 |
20600000 50000 13000 13045 5 10 |
20650000 50000 13000 13045 5 10 |
20700000 50000 13000 13045 5 10 |
20750000 50000 13000 13045 5 10 |
20800000 50000 13000 13045 5 10 |
20850000 50000 13000 13045 5 10 |
20867022 2040002 1743982 1844825 6 60 |
20900000 50000 13000 13040 5 10 |
20950000 50000 13000 13040 5 10 |
21000000 1000000 260000 274448 80 90 |
21000000 50000 13000 13039 5 10 |
21050000 50000 13000 13039 5 10 |
21100000 50000 13000 13039 5 10 |
21150000 50000 13000 13039 5 10 |
21200000 50000 13000 13039 5 10 |
21250000 50000 13000 13039 5 10 |
21300000 50000 13000 13039 5 10 |
21350000 50000 13000 13039 5 10 |
21400000 50000 13000 13039 5 10 |
21450000 50000 13000 13039 5 10 |
21500000 50000 13000 13039 5 10 |
21550000 50000 13000 13039 5 10 |
21600000 50000 13000 13039 5 10 |
21650000 50000 13000 13039 5 10 |
21700000 50000 13000 13039 5 10 |
21750000 50000 13000 13039 5 10 |
21800000 50000 13000 13039 5 10 |
21850000 50000 13000 13039 5 10 |
21900000 50000 13000 13039 5 10 |
21950000 50000 13000 13039 5 10 |
22000000 1000000 260000 274457 80 90 |
22000000 50000 13000 13040 5 10 |
22050000 50000 13000 13040 5 10 |
22100000 50000 13000 13040 5 10 |
22150000 50000 13000 13040 5 10 |
22200000 50000 13000 13040 5 10 |
22250000 50000 13000 13040 5 10 |
22300000 50000 13000 13040 5 10 |
22350000 50000 13000 13040 5 10 |
22400000 50000 13000 13040 5 10 |
22450000 50000 13000 13040 5 10 |
22500000 50000 13000 13040 5 10 |
22550000 50000 13000 13040 5 10 |
22600000 50000 13000 13040 5 10 |
22650000 50000 13000 13040 5 10 |
22700000 50000 13000 13040 5 10 |
22750000 50000 13000 13040 5 10 |
22800000 50000 13000 13040 5 10 |
22850000 50000 13000 13040 5 10 |
22900000 50000 13000 13040 5 10 |
22950000 50000 13000 13040 5 10 |
23000000 1000000 260000 274422 80 90 |
23000000 50000 13000 13044 5 10 |
23007024 1133002 142298 149839 9 7 |
23007024 2695002 1986655 2101611 80 90 |
23050000 50000 13000 13039 5 10 |
23100000 50000 13000 13039 5 10 |
23150000 50000 13000 13039 5 10 |
23200000 50000 13000 13039 5 10 |
23250000 50000 13000 13039 5 10 |
23300000 50000 13000 13039 5 10 |
23350000 50000 13000 13039 5 10 |
23400000 50000 13000 13039 5 10 |
23450000 50000 13000 13039 5 10 |
23500000 50000 13000 13039 5 10 |
23550000 50000 13000 13039 5 10 |
23600000 50000 13000 13039 5 10 |
23650000 50000 13000 13039 5 10 |
23700000 50000 13000 13039 5 10 |
23750000 50000 13000 13039 5 10 |
23800000 50000 13000 13039 5 10 |
23850000 50000 13000 13039 5 10 |
23900000 50000 13000 13039 5 10 |
23950000 50000 13000 13039 5 10 |
24000000 5000000 5000000 5290375 80 90 |
24000000 250000 250000 263870 5 10 |
24250000 250000 250000 263870 5 10 |
24500000 250000 250000 263870 5 10 |
24750000 250000 250000 263870 5 10 |
25000000 250000 250000 263870 5 10 |
25250000 250000 250000 263870 5 10 |
25500000 250000 250000 263870 5 10 |
25750000 250000 250000 263870 5 10 |
25802026 924002 184480 194489 12 93 |
25802026 2922002 1647630 1742829 22 27 |
25802026 700002 388710 410581 55 10 |
25802026 1494002 1108734 1172599 89 98 |
26000000 250000 250000 263860 5 10 |
26250000 250000 250000 263860 5 10 |
26500000 250000 250000 263860 5 10 |
26750000 250000 250000 263860 5 10 |
27000000 250000 250000 263860 5 10 |
27250000 250000 250000 263860 5 10 |
27396028 1904002 741039 783489 68 19 |
27500000 250000 250000 263833 5 10 |
27750000 250000 250000 263833 5 10 |
28000000 250000 250000 263833 5 10 |
28250000 250000 250000 263833 5 10 |
28500000 250000 250000 263833 5 10 |
28750000 250000 250000 263833 5 10 |
29000000 5000000 5000000 5290414 80 90 |
29000000 250000 250000 263787 5 10 |
29250000 250000 250000 263787 5 10 |
29400030 2202002 1966810 2080616 55 79 |
29500000 250000 250000 263787 5 10 |
29750000 250000 250000 263787 5 10 |
30000000 250000 250000 263787 5 10 |
30250000 250000 250000 263787 5 10 |
30500000 250000 250000 263787 5 10 |
30750000 250000 250000 263787 5 10 |
31000000 250000 250000 263787 5 10 |
31250000 250000 250000 263787 5 10 |
31500000 250000 250000 263787 5 10 |
31702032 2763002 1822616 1928016 17 40 |
31750000 250000 250000 263835 5 10 |
32000000 250000 250000 263835 5 10 |
32250000 250000 250000 263835 5 10 |
32500000 250000 250000 263835 5 10 |
32750000 250000 250000 263835 5 10 |
33000000 250000 250000 263835 5 10 |
33250000 250000 250000 263835 5 10 |
33500000 250000 250000 263835 5 10 |
33750000 250000 250000 263835 5 10 |
34000000 5000000 5000000 5290416 80 90 |
34000000 250000 250000 263865 5 10 |
34250000 250000 250000 263865 5 10 |
34500000 250000 250000 263865 5 10 |
34565034 102002 48188 50269 33 46 |
34565034 2031002 1109806 1173704 98 60 |
34750000 250000 250000 263874 5 10 |
35000000 250000 250000 263874 5 10 |
35250000 250000 250000 263874 5 10 |
35500000 250000 250000 263874 5 10 |
35750000 250000 250000 263874 5 10 |
36000000 250000 250000 263874 5 10 |
36250000 250000 250000 263874 5 10 |
36500000 250000 250000 263874 5 10 |
36696036 1613002 1175317 1243026 55 42 |
36750000 250000 250000 263874 5 10 |
37000000 250000 250000 263874 5 10 |
37250000 250000 250000 263874 5 10 |
37500000 250000 250000 263874 5 10 |
37750000 250000 250000 263874 5 10 |
38000000 250000 250000 263874 5 10 |
38250000 250000 250000 263874 5 10 |
38409038 44002 19554 19973 88 66 |
38500000 250000 250000 263860 5 10 |
38553040 2042002 1261616 1334391 55 56 |
38750000 250000 250000 263839 5 10 |
39000000 5000000 5000000 5290365 80 90 |
39000000 250000 250000 263794 5 10 |
39250000 250000 250000 263794 5 10 |
39500000 250000 250000 263794 5 10 |
39750000 250000 250000 263794 5 10 |
40000000 250000 250000 263794 5 10 |
40250000 250000 250000 263794 5 10 |
40500000 250000 250000 263794 5 10 |
40695042 2321002 1709360 1808167 96 26 |
40750000 250000 250000 263884 5 10 |
41000000 250000 250000 263884 5 10 |
41250000 250000 250000 263884 5 10 |
41500000 250000 250000 263884 5 10 |
41750000 250000 250000 263884 5 10 |
42000000 250000 250000 263884 5 10 |
42250000 250000 250000 263884 5 10 |
42500000 250000 250000 263884 5 10 |
42750000 250000 250000 263884 5 10 |
43000000 250000 250000 263884 5 10 |
43116044 1508002 328958 347400 100 7 |
43116044 2053002 165947 174853 53 58 |
43250000 250000 250000 263790 5 10 |
43500000 250000 250000 263790 5 10 |
43750000 250000 250000 263790 5 10 |
44000000 5000000 5000000 5290418 80 90 |
44000000 250000 250000 263808 5 10 |
44250000 250000 250000 263808 5 10 |
44500000 250000 250000 263808 5 10 |
44750000 250000 250000 263808 5 10 |
45000000 250000 250000 263808 5 10 |
45250000 250000 250000 263808 5 10 |
45269046 217002 173624 182999 26 19 |
45500000 250000 250000 263833 5 10 |
45586048 2506002 1214577 1284576 30 21 |
45586048 279002 62021 64904 88 1 |
45750000 250000 250000 263891 5 10 |
45965050 587002 531557 561798 13 24 |
45965050 1808002 930618 984045 34 28 |
46000000 250000 250000 263790 5 10 |
46250000 250000 250000 263790 5 10 |
46500000 250000 250000 263790 5 10 |
46750000 250000 250000 263790 5 10 |
47000000 250000 250000 263790 5 10 |
47250000 250000 250000 263790 5 10 |
47500000 250000 250000 263790 5 10 |
47750000 250000 250000 263790 5 10 |
47873052 1739002 311765 329190 82 63 |
48000000 250000 250000 263808 5 10 |
48250000 250000 250000 263808 5 10 |
48500000 250000 250000 263808 5 10 |
48750000 250000 250000 263808 5 10 |
49000000 1800000 522000 551654 80 90 |
49000000 90000 26100 26907 5 10 |
49090000 90000 26100 26907 5 10 |
49180000 90000 26100 26907 5 10 |
49270000 90000 26100 26907 5 10 |
49360000 90000 26100 26907 5 10 |
49450000 90000 26100 26907 5 10 |
49540000 90000 26100 26907 5 10 |
49630000 90000 26100 26907 5 10 |
49712054 1826002 1038627 1098393 4 17 |
49712054 6002 3398 2881 58 90 |
49712054 2705002 86154 90468 13 43 |
49720000 90000 26100 26899 5 10 |
49810000 90000 26100 26899 5 10 |
49900000 90000 26100 26899 5 10 |
49990000 90000 26100 26899 5 10 |
50080000 90000 26100 26899 5 10 |
50170000 90000 26100 26899 5 10 |
50260000 90000 26100 26899 5 10 |
50350000 90000 26100 26899 5 10 |
50440000 90000 26100 26899 5 10 |
50530000 90000 26100 26899 5 10 |
50620000 90000 26100 26899 5 10 |
50710000 90000 26100 26899 5 10 |
50800000 1800000 522000 551668 80 90 |
50800000 90000 26100 26907 5 10 |
50890000 90000 26100 26907 5 10 |
50980000 90000 26100 26907 5 10 |
51070000 90000 26100 26907 5 10 |
51160000 90000 26100 26907 5 10 |
51250000 90000 26100 26907 5 10 |
51340000 90000 26100 26907 5 10 |
51430000 90000 26100 26907 5 10 |
51520000 90000 26100 26907 5 10 |
51610000 90000 26100 26907 5 10 |
51700000 90000 26100 26907 5 10 |
51790000 90000 26100 26907 5 10 |
51880000 90000 26100 26907 5 10 |
51970000 90000 26100 26907 5 10 |
52060000 90000 26100 26907 5 10 |
52150000 90000 26100 26907 5 10 |
52240000 90000 26100 26907 5 10 |
52330000 90000 26100 26907 5 10 |
52420000 90000 26100 26907 5 10 |
52510000 90000 26100 26907 5 10 |
52517056 1748002 1410488 1491893 20 18 |
52600000 1800000 522000 551647 80 90 |
52600000 90000 26100 26901 5 10 |
52690000 90000 26100 26901 5 10 |
52780000 90000 26100 26901 5 10 |
52870000 90000 26100 26901 5 10 |
52960000 90000 26100 26901 5 10 |
53050000 90000 26100 26901 5 10 |
53140000 90000 26100 26901 5 10 |
53230000 90000 26100 26901 5 10 |
53320000 90000 26100 26901 5 10 |
53410000 90000 26100 26901 5 10 |
53500000 90000 26100 26901 5 10 |
53590000 90000 26100 26901 5 10 |
53680000 90000 26100 26901 5 10 |
53770000 90000 26100 26901 5 10 |
53860000 90000 26100 26901 5 10 |
53950000 90000 26100 26901 5 10 |
54040000 90000 26100 26901 5 10 |
54130000 90000 26100 26901 5 10 |
54220000 90000 26100 26901 5 10 |
54310000 90000 26100 26901 5 10 |
54365058 150002 103582 108873 65 28 |
54365058 2224002 360929 381223 65 26 |
54400000 1800000 522000 551690 80 90 |
54400000 90000 26100 26898 5 10 |
54490000 90000 26100 26898 5 10 |
54580000 90000 26100 26898 5 10 |
54670000 90000 26100 26898 5 10 |
54760000 90000 26100 26898 5 10 |
54850000 90000 26100 26898 5 10 |
54940000 90000 26100 26898 5 10 |
55030000 90000 26100 26898 5 10 |
55120000 90000 26100 26898 5 10 |
55210000 90000 26100 26898 5 10 |
55300000 90000 26100 26898 5 10 |
55390000 90000 26100 26898 5 10 |
55480000 90000 26100 26898 5 10 |
55570000 90000 26100 26898 5 10 |
55660000 90000 26100 26898 5 10 |
55750000 90000 26100 26898 5 10 |
55840000 90000 26100 26898 5 10 |
55930000 90000 26100 26898 5 10 |
56020000 90000 26100 26898 5 10 |
56110000 90000 26100 26898 5 10 |
56200000 1800000 522000 551656 80 90 |
56200000 90000 26100 26909 5 10 |
56290000 90000 26100 26909 5 10 |
56380000 90000 26100 26909 5 10 |
56470000 90000 26100 26909 5 10 |
56560000 90000 26100 26909 5 10 |
56650000 90000 26100 26909 5 10 |
56689060 1158002 1083915 1146315 18 71 |
56740000 90000 26100 26899 5 10 |
56830000 90000 26100 26899 5 10 |
56920000 90000 26100 26899 5 10 |
57010000 90000 26100 26899 5 10 |
57100000 90000 26100 26899 5 10 |
57190000 90000 26100 26899 5 10 |
57280000 90000 26100 26899 5 10 |
57370000 90000 26100 26899 5 10 |
57460000 90000 26100 26899 5 10 |
57550000 90000 26100 26899 5 10 |
57640000 90000 26100 26899 5 10 |
57730000 90000 26100 26899 5 10 |
57820000 90000 26100 26899 5 10 |
57910000 90000 26100 26899 5 10 |
57947062 856002 462631 488882 51 81 |
58000000 3200000 2304000 2437427 80 90 |
58000000 160000 115200 121166 5 10 |
58160000 160000 115200 121166 5 10 |
58320000 160000 115200 121166 5 10 |
58480000 160000 115200 121166 5 10 |
58640000 160000 115200 121166 5 10 |
58800000 160000 115200 121166 5 10 |
58903064 855002 663196 701079 32 81 |
58960000 160000 115200 121203 5 10 |
59120000 160000 115200 121203 5 10 |
59280000 160000 115200 121203 5 10 |
59440000 160000 115200 121203 5 10 |
59600000 160000 115200 121203 5 10 |
59760000 160000 115200 121203 5 10 |
59858066 2848002 1930317 2041981 61 33 |
59858066 2867002 1697032 1795106 63 60 |
59858066 1168002 437978 462780 2 35 |
59858066 2067002 1079046 1141152 22 7 |
59858066 1476002 1039252 1099044 42 35 |
59920000 160000 115200 121161 5 10 |
60080000 160000 115200 121161 5 10 |
60240000 160000 115200 121161 5 10 |
60400000 160000 115200 121161 5 10 |
60560000 160000 115200 121161 5 10 |
60720000 160000 115200 121161 5 10 |
60880000 160000 115200 121161 5 10 |
61040000 160000 115200 121161 5 10 |
61200000 3200000 2304000 2437449 80 90 |
61200000 160000 115200 121164 5 10 |
61360000 160000 115200 121164 5 10 |
61434068 1096002 936145 989908 94 93 |
61434068 32002 30918 31996 1 31 |
61520000 160000 115200 121172 5 10 |
61566070 1328002 840830 889053 94 57 |
61566070 558002 381573 403050 50 49 |
61566070 2257002 872000 922068 76 61 |
61566070 826002 477837 504938 78 87 |
61680000 160000 115200 121206 5 10 |
61840000 160000 115200 121206 5 10 |
62000000 160000 115200 121206 5 10 |
62160000 160000 115200 121206 5 10 |
62320000 160000 115200 121206 5 10 |
62480000 160000 115200 121206 5 10 |
62492072 2468002 2087746 2208592 42 17 |
62640000 160000 115200 121176 5 10 |
62800000 160000 115200 121176 5 10 |
62960000 160000 115200 121176 5 10 |
63120000 160000 115200 121176 5 10 |
63280000 160000 115200 121176 5 10 |
63440000 160000 115200 121176 5 10 |
63600000 160000 115200 121176 5 10 |
63760000 160000 115200 121176 5 10 |
63920000 160000 115200 121176 5 10 |
64080000 160000 115200 121176 5 10 |
64240000 160000 115200 121176 5 10 |
64400000 3200000 2304000 2437408 80 90 |
64400000 160000 115200 121174 5 10 |
64560000 160000 115200 121174 5 10 |
64720000 160000 115200 121174 5 10 |
64880000 160000 115200 121174 5 10 |
65040000 160000 115200 121174 5 10 |
65060074 1997002 747316 790126 21 70 |
65200000 160000 115200 121174 5 10 |
65360000 160000 115200 121174 5 10 |
65520000 160000 115200 121174 5 10 |
65680000 160000 115200 121174 5 10 |
65840000 160000 115200 121174 5 10 |
66000000 160000 115200 121174 5 10 |
66160000 160000 115200 121174 5 10 |
66320000 160000 115200 121174 5 10 |
66480000 160000 115200 121174 5 10 |
66640000 160000 115200 121174 5 10 |
66800000 160000 115200 121174 5 10 |
66960000 160000 115200 121174 5 10 |
67120000 160000 115200 121174 5 10 |
67157076 1549002 658208 695808 7 71 |
67280000 160000 115200 121204 5 10 |
67440000 160000 115200 121204 5 10 |
67600000 3200000 2304000 2437443 80 90 |
67600000 160000 115200 121169 5 10 |
67760000 160000 115200 121169 5 10 |
67920000 160000 115200 121169 5 10 |
68080000 160000 115200 121169 5 10 |
68240000 160000 115200 121169 5 10 |
68400000 160000 115200 121169 5 10 |
68560000 160000 115200 121169 5 10 |
68720000 160000 115200 121169 5 10 |
68806078 348002 307802 325017 24 26 |
68806078 987002 116089 122151 29 49 |
68880000 160000 115200 121203 5 10 |
69040000 160000 115200 121203 5 10 |
69200000 160000 115200 121203 5 10 |
69360000 160000 115200 121203 5 10 |
69520000 160000 115200 121203 5 10 |
69680000 160000 115200 121203 5 10 |
69840000 160000 115200 121203 5 10 |
69893080 1128002 266659 281501 37 88 |
69893080 2255002 1966070 2079803 25 77 |
69893080 2531002 2112468 2234698 1 56 |
70000000 160000 115200 121206 5 10 |
70160000 160000 115200 121206 5 10 |
70320000 160000 115200 121206 5 10 |
70480000 160000 115200 121206 5 10 |
70640000 160000 115200 121206 5 10 |
70800000 3200000 2304000 2437423 80 90 |
70800000 160000 115200 121214 5 10 |
70960000 160000 115200 121214 5 10 |
71120000 160000 115200 121214 5 10 |
71280000 160000 115200 121214 5 10 |
71440000 160000 115200 121214 5 10 |
71600000 160000 115200 121214 5 10 |
71760000 160000 115200 121214 5 10 |
71920000 160000 115200 121214 5 10 |
72080000 160000 115200 121214 5 10 |
72240000 160000 115200 121214 5 10 |
72400000 160000 115200 121214 5 10 |
72524082 74002 28416 29351 75 57 |
72524082 1369002 944728 999039 95 55 |
72524082 2658002 564240 596380 65 1 |
72524082 2880002 344142 363445 23 79 |
72524082 1667002 485209 512765 8 23 |
72524082 1833002 835588 883515 48 19 |
72560000 160000 115200 121166 5 10 |
72720000 160000 115200 121166 5 10 |
72880000 160000 115200 121166 5 10 |
73040000 160000 115200 121166 5 10 |
73200000 160000 115200 121166 5 10 |
73360000 160000 115200 121166 5 10 |
73520000 160000 115200 121166 5 10 |
73680000 160000 115200 121166 5 10 |
73840000 160000 115200 121166 5 10 |
74000000 5600000 3080000 3258634 80 90 |
74000000 280000 154000 162257 5 10 |
74280000 280000 154000 162257 5 10 |
74457084 790002 786572 831626 45 80 |
74560000 280000 154000 162219 5 10 |
74840000 280000 154000 162219 5 10 |
75120000 280000 154000 162219 5 10 |
75347086 41002 30969 32062 43 90 |
75347086 336002 63459 66448 34 22 |
75400000 280000 154000 162216 5 10 |
75680000 280000 154000 162216 5 10 |
75783088 1291002 1008318 1066323 31 64 |
75783088 2106002 1883656 1992568 43 77 |
75783088 1976002 1845195 1951881 84 39 |
75783088 2721002 1377766 1457252 78 89 |
75783088 281002 202534 213573 69 46 |
75960000 280000 154000 162225 5 10 |
76164090 1742002 1186725 1255082 94 22 |
76240000 280000 154000 162220 5 10 |
76520000 280000 154000 162220 5 10 |
76800000 280000 154000 162220 5 10 |
77080000 280000 154000 162220 5 10 |
77360000 280000 154000 162220 5 10 |
77640000 280000 154000 162220 5 10 |
77920000 280000 154000 162220 5 10 |
78006092 506002 369708 390537 96 47 |
78200000 280000 154000 162210 5 10 |
78480000 280000 154000 162210 5 10 |
78612094 1664002 1052871 1113424 69 16 |
78760000 280000 154000 162272 5 10 |
79040000 280000 154000 162272 5 10 |
79320000 280000 154000 162272 5 10 |
79600000 5600000 3080000 3258608 80 90 |
79600000 280000 154000 162274 5 10 |
79880000 280000 154000 162274 5 10 |
80160000 280000 154000 162274 5 10 |
80376096 2455002 239185 252431 18 83 |
80376096 2060002 1651940 1747402 83 73 |
80440000 280000 154000 162262 5 10 |
80720000 280000 154000 162262 5 10 |
81000000 280000 154000 162262 5 10 |
81280000 280000 154000 162262 5 10 |
81560000 280000 154000 162262 5 10 |
81840000 280000 154000 162262 5 10 |
82120000 280000 154000 162262 5 10 |
82400000 280000 154000 162262 5 10 |
82536098 1593002 899992 951670 49 86 |
82536098 2902002 1003444 1061128 19 69 |
82680000 280000 154000 162221 5 10 |
82960000 280000 154000 162221 5 10 |
83240000 280000 154000 162221 5 10 |
83520000 280000 154000 162221 5 10 |
83800000 280000 154000 162221 5 10 |
84080000 280000 154000 162221 5 10 |
84360000 280000 154000 162221 5 10 |
84640000 280000 154000 162221 5 10 |
84920000 280000 154000 162221 5 10 |
85200000 5600000 3080000 3258645 80 90 |
85200000 280000 154000 162274 5 10 |
85480000 280000 154000 162274 5 10 |
85538100 1686002 10299 10182 35 84 |
85538100 2046002 1842815 1949385 89 71 |
85760000 280000 154000 162218 5 10 |
86040000 280000 154000 162218 5 10 |
86320000 280000 154000 162218 5 10 |
86600000 280000 154000 162218 5 10 |
86880000 280000 154000 162218 5 10 |
87160000 280000 154000 162218 5 10 |
87440000 280000 154000 162218 5 10 |
87684102 950002 46646 48639 1 93 |
87684102 1675002 693268 732923 54 19 |
87720000 280000 154000 162265 5 10 |
88000000 280000 154000 162265 5 10 |
88280000 280000 154000 162265 5 10 |
88560000 280000 154000 162265 5 10 |
88840000 280000 154000 162265 5 10 |
89120000 280000 154000 162265 5 10 |
89400000 280000 154000 162265 5 10 |
89459104 768002 168011 177085 51 84 |
89459104 2652002 1318274 1394333 41 33 |
89680000 280000 154000 162216 5 10 |
89960000 280000 154000 162216 5 10 |
90240000 280000 154000 162216 5 10 |
90520000 280000 154000 162216 5 10 |
90800000 5600000 3080000 3258650 80 90 |
90800000 280000 154000 162225 5 10 |
91080000 280000 154000 162225 5 10 |
91360000 280000 154000 162225 5 10 |
91640000 280000 154000 162225 5 10 |
91920000 280000 154000 162225 5 10 |
92200000 280000 154000 162225 5 10 |
92211106 145002 129480 136278 81 5 |
92456108 1380002 1124915 1189676 23 1 |
92480000 280000 154000 162289 5 10 |
92760000 280000 154000 162289 5 10 |
93040000 280000 154000 162289 5 10 |
93320000 280000 154000 162289 5 10 |
93600000 280000 154000 162289 5 10 |
93880000 280000 154000 162289 5 10 |
93936110 2777002 1595969 1688155 57 47 |
94160000 280000 154000 162225 5 10 |
94440000 280000 154000 162225 5 10 |
94720000 280000 154000 162225 5 10 |
95000000 280000 154000 162225 5 10 |
95280000 280000 154000 162225 5 10 |
95560000 280000 154000 162225 5 10 |
95840000 280000 154000 162225 5 10 |
96120000 280000 154000 162225 5 10 |
96400000 5600000 3080000 3258652 80 90 |
96400000 280000 154000 162214 5 10 |
96680000 280000 154000 162214 5 10 |
96813112 1458002 1103572 1167136 50 37 |
96813112 1168002 718904 760013 50 63 |
96960000 280000 154000 162218 5 10 |
97240000 280000 154000 162218 5 10 |
97520000 280000 154000 162218 5 10 |
97800000 280000 154000 162218 5 10 |
98080000 280000 154000 162218 5 10 |
98081114 2107002 1959110 2072468 4 99 |
98081114 1347002 1195722 1264606 57 34 |
98081114 1987002 1254103 1326407 22 50 |
98360000 280000 154000 162222 5 10 |
98640000 280000 154000 162222 5 10 |
98920000 280000 154000 162222 5 10 |
99200000 280000 154000 162222 5 10 |
99480000 280000 154000 162222 5 10 |
99760000 280000 154000 162222 5 10 |
100040000 280000 154000 162222 5 10 |
100168116 1460002 1276815 1350410 35 45 |
100168116 1233002 811625 858155 36 38 |
100168116 1572002 549837 581157 46 69 |
100168116 2977002 805176 851368 31 11 |
100320000 280000 154000 162222 5 10 |
100600000 280000 154000 162222 5 10 |
100880000 280000 154000 162222 5 10 |
101160000 280000 154000 162222 5 10 |
101440000 280000 154000 162222 5 10 |
101720000 280000 154000 162222 5 10 |
102000000 3800000 2926000 3095629 80 90 |
102000000 190000 146300 154071 5 10 |
102190000 190000 146300 154071 5 10 |
102380000 190000 146300 154071 5 10 |
102570000 190000 146300 154071 5 10 |
102760000 190000 146300 154071 5 10 |
102950000 190000 146300 154071 5 10 |
103140000 190000 146300 154071 5 10 |
103245118 818002 82058 86133 54 97 |
103245118 1107002 77945 81784 71 16 |
103245118 697002 185308 195398 39 20 |
103245118 2107002 62104 65015 89 100 |
103330000 190000 146300 154069 5 10 |
103520000 190000 146300 154069 5 10 |
103710000 190000 146300 154069 5 10 |
103900000 190000 146300 154069 5 10 |
104090000 190000 146300 154069 5 10 |
104280000 190000 146300 154069 5 10 |
104470000 190000 146300 154069 5 10 |
104660000 190000 146300 154069 5 10 |
104850000 190000 146300 154069 5 10 |
105040000 190000 146300 154069 5 10 |
105230000 190000 146300 154069 5 10 |
105420000 190000 146300 154069 5 10 |
105452120 779002 231364 244089 79 75 |
105610000 190000 146300 154071 5 10 |
105800000 3800000 2926000 3095659 80 90 |
105800000 190000 146300 154122 5 10 |
105990000 190000 146300 154122 5 10 |
106180000 190000 146300 154122 5 10 |
106331122 443002 5641 5253 69 72 |
106331122 1665002 942364 996515 72 16 |
106331122 2739002 709436 749996 58 27 |
106370000 190000 146300 154067 5 10 |
106560000 190000 146300 154067 5 10 |
106750000 190000 146300 154067 5 10 |
106940000 190000 146300 154067 5 10 |
107130000 190000 146300 154067 5 10 |
107320000 190000 146300 154067 5 10 |
107510000 190000 146300 154067 5 10 |
107700000 190000 146300 154067 5 10 |
107890000 190000 146300 154067 5 10 |
108080000 190000 146300 154067 5 10 |
108270000 190000 146300 154067 5 10 |
108460000 190000 146300 154067 5 10 |
108650000 190000 146300 154067 5 10 |
108840000 190000 146300 154067 5 10 |
109030000 190000 146300 154067 5 10 |
109170124 2455002 1961694 2075195 75 86 |
109170124 2898002 85762 90049 53 26 |
109170124 2648002 691495 731060 8 24 |
109170124 267002 21664 22204 27 50 |
109170124 1450002 361880 382219 13 62 |
109220000 190000 146300 154125 5 10 |
109410000 190000 146300 154125 5 10 |
109600000 3800000 2926000 3095578 80 90 |
109600000 190000 146300 154124 5 10 |
109790000 190000 146300 154124 5 10 |
109980000 190000 146300 154124 5 10 |
110170000 190000 146300 154124 5 10 |
110360000 190000 146300 154124 5 10 |
110550000 190000 146300 154124 5 10 |
110720126 2706002 487696 515419 33 31 |
110740000 190000 146300 154071 5 10 |
110930000 190000 146300 154071 5 10 |
111120000 190000 146300 154071 5 10 |
111310000 190000 146300 154071 5 10 |
111500000 190000 146300 154071 5 10 |
111690000 190000 146300 154071 5 10 |
111880000 190000 146300 154071 5 10 |
112070000 190000 146300 154071 5 10 |
112260000 190000 146300 154071 5 10 |
112450000 190000 146300 154071 5 10 |
112640000 190000 146300 154071 5 10 |
112830000 190000 146300 154071 5 10 |
113020000 190000 146300 154071 5 10 |
113210000 190000 146300 154071 5 10 |
113400000 3800000 2926000 3095624 80 90 |
113400000 190000 146300 154076 5 10 |
113526128 1361002 1081105 1143354 37 24 |
113526128 2774002 2640963 2793983 86 84 |
113526128 565002 425383 449435 79 9 |
113526128 930002 281633 297330 43 94 |
113526128 1967002 288096 304103 55 51 |
113526128 1141002 1093302 1156229 73 36 |
113590000 190000 146300 154127 5 10 |
113780000 190000 146300 154127 5 10 |
113970000 190000 146300 154127 5 10 |
114160000 190000 146300 154127 5 10 |
114350000 190000 146300 154127 5 10 |
114540000 190000 146300 154127 5 10 |
114730000 190000 146300 154127 5 10 |
114767130 1422002 171812 181120 36 66 |
114920000 190000 146300 154080 5 10 |
115110000 190000 146300 154080 5 10 |
115300000 190000 146300 154080 5 10 |
115490000 190000 146300 154080 5 10 |
115680000 190000 146300 154080 5 10 |
115870000 190000 146300 154080 5 10 |
116060000 190000 146300 154080 5 10 |
116250000 190000 146300 154080 5 10 |
116289132 1438002 1068638 1130145 92 83 |
116440000 190000 146300 154120 5 10 |
116630000 190000 146300 154120 5 10 |
116820000 190000 146300 154120 5 10 |
117010000 190000 146300 154120 5 10 |
117200000 3800000 2926000 3095640 80 90 |
117200000 190000 146300 154122 5 10 |
117390000 190000 146300 154122 5 10 |
117580000 190000 146300 154122 5 10 |
117770000 190000 146300 154122 5 10 |
117827134 1934002 918431 971185 92 1 |
117960000 190000 146300 154067 5 10 |
118150000 190000 146300 154067 5 10 |
118340000 190000 146300 154067 5 10 |
118530000 190000 146300 154067 5 10 |
118720000 190000 146300 154067 5 10 |
118910000 190000 146300 154067 5 10 |
119100000 190000 146300 154067 5 10 |
119290000 190000 146300 154067 5 10 |
119480000 190000 146300 154067 5 10 |
119670000 190000 146300 154067 5 10 |
119860000 190000 146300 154067 5 10 |
119861136 646002 401618 424282 8 45 |
119861136 156002 51422 53690 93 26 |
120050000 190000 146300 154124 5 10 |
120240000 190000 146300 154124 5 10 |
120430000 190000 146300 154124 5 10 |
120620000 190000 146300 154124 5 10 |
120810000 190000 146300 154124 5 10 |
/unsupported/trunk/crunch/load/120_1/hpattern.dat |
---|
0,0 → 1,137 |
136 |
1000081 43000 24668 25390 |
1000252 90000 9846 9692 |
1000415 88000 4730 4290 |
1000578 69000 1978 1378 |
4483146 56000 30821 31902 |
4483299 95000 2375 1799 |
6589722 73000 2440 1867 |
8128465 79000 3360 2840 |
8290324 99000 5582 5190 |
8290508 95000 3268 2742 |
8290649 82000 2050 1455 |
9019208 44000 17226 17509 |
9019362 67000 11010 10934 |
12178420 71000 1962 1361 |
12502801 71000 1775 1163 |
12583376 87000 22852 23462 |
12583532 85000 7178 6879 |
12583737 86000 2150 1560 |
12583941 67000 2090 1497 |
14446422 71000 10026 9895 |
14527606 68000 4236 3766 |
14932727 88000 2200 1614 |
15985597 88000 2200 1613 |
16309389 78000 3885 3396 |
17929489 72000 2886 2338 |
18011034 76000 1900 1296 |
18253873 83000 2075 1481 |
19468581 100000 2531 1962 |
19468751 100000 2500 1931 |
19549816 76000 1900 1296 |
19630450 90000 4680 4237 |
19630616 87000 10826 10738 |
19630857 72000 5658 5272 |
20035654 76000 4440 3983 |
20197501 91000 4920 4490 |
20197668 100000 4608 4159 |
20197835 69000 3810 3316 |
22060859 80000 2000 1401 |
22627458 89000 2693 2135 |
22627625 61000 1525 899 |
23113818 92000 2300 1719 |
23761532 67000 1675 1058 |
49000040 96000 49280 51422 |
49000208 75000 14750 14896 |
55075318 99000 8532 8312 |
55075483 70000 6779 6459 |
56776117 99000 39534 41127 |
56776287 47000 4216 3745 |
56776453 90000 2250 1666 |
64795164 99000 12147 12140 |
64795332 82000 8262 8025 |
64795497 82000 2961 2418 |
71437416 68000 5175 4760 |
71437573 66000 5284 4876 |
72814272 99000 5372 4968 |
72814559 90000 3320 2798 |
72814724 85000 2125 1534 |
74000039 78000 6968 6659 |
74000182 71000 5344 4941 |
76783641 82000 4878 4447 |
76783809 88000 2200 1613 |
76945487 73000 4987 4561 |
79699818 60000 1500 872 |
79751258 66000 1650 1031 |
79751418 70000 4093 3615 |
80104634 73000 2655 2094 |
80318239 70000 6018 5654 |
80833353 78000 4576 4127 |
82858607 82000 3982 3499 |
82858755 75000 1875 1269 |
83425728 87000 3058 2520 |
83425935 68000 1700 1084 |
83912035 78000 1950 1349 |
84560013 74000 1850 1243 |
85097318 93000 2325 1746 |
85421481 80000 3236 2709 |
85988355 98000 4637 4190 |
85988562 78000 3220 2692 |
86017733 98000 2450 1877 |
86017880 85000 2125 1534 |
87151424 75000 3564 3056 |
88933839 68000 2509 1940 |
88934080 89000 2225 1640 |
89500800 84000 2627 2065 |
90230127 93000 2325 1745 |
90472780 90000 2637 2074 |
90472975 86000 2150 1560 |
90554060 76000 1900 1296 |
91901533 87000 2175 1586 |
92306606 89000 2784 2231 |
92306959 73000 1825 1216 |
92630418 84000 2100 1507 |
92903116 69000 1725 1111 |
93226690 94000 2790 2237 |
93926444 73000 3916 3427 |
93955802 40000 1000 343 |
94441907 86000 2488 1918 |
96143345 66000 2986 2443 |
96304847 99000 2475 1904 |
96710173 86000 2150 1561 |
97195858 97000 2425 1851 |
97439161 92000 2300 1719 |
97762836 92000 2300 1719 |
97763243 71000 2191 1603 |
98220054 73000 1825 1216 |
98492233 96000 2400 1825 |
98948616 82000 2050 1455 |
99434494 97000 2425 1851 |
99515691 76000 2070 1475 |
99839614 86000 3148 2616 |
99839785 91000 2275 1692 |
100840751 78000 1950 1348 |
101407970 90000 2250 1666 |
101489499 91000 2610 2047 |
101489642 69000 1725 1110 |
106268284 100000 2500 1931 |
106805664 82000 2688 2129 |
107078723 92000 2300 1719 |
107158817 59000 1599 977 |
107210837 78000 2281 1698 |
107291765 75000 2130 1539 |
108698025 71000 2044 1448 |
108860692 67000 2159 1570 |
111937866 78000 1950 1348 |
113366926 72000 1906 1301 |
113447731 73000 2251 1666 |
113529103 74000 2128 1536 |
114287808 77000 2239 1654 |
114368339 93000 2325 1746 |
114449100 88000 2200 1613 |
114530807 88000 2200 1613 |
118255950 80000 2139 1549 |
119198984 80000 2125 1533 |
119360788 92000 2300 1719 |
119523155 84000 2435 1862 |
120524902 89000 2302 1720 |
/unsupported/trunk/crunch/load/initfile.c |
---|
0,0 → 1,91 |
/* |
* Project: S.Ha.R.K. |
* |
* Coordinators: |
* Giorgio Buttazzo <giorgio@sssup.it> |
* Paolo Gai <pj@gandalf.sssup.it> |
* |
* Authors : |
* Paolo Gai <pj@gandalf.sssup.it> |
* (see the web pages for full authors list) |
* |
* ReTiS Lab (Scuola Superiore S.Anna - Pisa - Italy) |
* |
* http://www.sssup.it |
* http://retis.sssup.it |
* http://shark.sssup.it |
*/ |
/** |
------------ |
CVS : $Id: initfile.c,v 1.1 2004-07-05 14:18:04 pj Exp $ |
File: $File$ |
Revision: $Revision: 1.1 $ |
Last update: $Date: 2004-07-05 14:18:04 $ |
------------ |
**/ |
/* |
* Copyright (C) 2000 Paolo Gai and Gabriele Bolognini |
* |
* This program is free software; you can redistribute it and/or modify |
* it under the terms of the GNU General Public License as published by |
* the Free Software Foundation; either version 2 of the License, or |
* (at your option) any later version. |
* |
* This program is distributed in the hope that it will be useful, |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with this program; if not, write to the Free Software |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* |
*/ |
#include "kernel/kern.h" |
#include "modules/rr.h" |
#include "modules/dummy.h" |
/*+ sysyem tick in us +*/ |
#define TICK 0 |
/*+ RR tick in us +*/ |
#define RRTICK 10000 |
void read_myfile(void); |
TIME __kernel_register_levels__(void *arg) |
{ |
struct multiboot_info *mb = (struct multiboot_info *)arg; |
RR_register_level(RRTICK, RR_MAIN_YES, mb); |
dummy_register_level(); |
/* If you need to interact with the DOS Filesystem and you use |
the X eXtender, this is the better place where you can use |
the DOS_fXXX functions... |
WARNING: You can call these functions only when you are in |
real mode!!! |
The system is in real mode: |
- into __kernel_register_levels__() |
- into sys_atrunlevel functions posted with RUNLEVEL_AFTER_EXIT |
*/ |
read_myfile(); |
return TICK; |
} |
TASK __init__(void *arg) |
{ |
struct multiboot_info *mb = (struct multiboot_info *)arg; |
__call_main__(mb); |
return (void *)0; |
} |
/unsupported/trunk/crunch/load/length.dat |
---|
0,0 → 1,0 |
60 |
/unsupported/trunk/crunch/load/crunch.dat |
---|
0,0 → 1,709 |
708 |
500063 0 36000 19896 20209 0 0 |
1000000 1 3000000 1290000 1375649 80 90 |
1000000 1 100000 43000 45150 3 6 |
1000000 1 1500002 1481283 1579713 18 30 |
1000000 1 2921002 1208851 1289115 80 65 |
1000000 1 2358002 1004771 1071328 23 24 |
1100000 1 100000 43000 45147 3 6 |
1200000 1 100000 43000 45147 3 6 |
1300000 1 100000 43000 45147 3 6 |
1400000 1 100000 43000 45147 3 6 |
1500000 1 100000 43000 45147 3 6 |
1600000 1 100000 43000 45147 3 6 |
1700000 1 100000 43000 45147 3 6 |
1800000 1 100000 43000 45147 3 6 |
1900000 1 100000 43000 45147 3 6 |
2000000 1 100000 43000 45147 3 6 |
2100000 1 100000 43000 45147 3 6 |
2200000 1 100000 43000 45147 3 6 |
2300000 1 100000 43000 45147 3 6 |
2400000 1 100000 43000 45147 3 6 |
2500000 1 100000 43000 45147 3 6 |
2600000 1 100000 43000 45147 3 6 |
2700000 1 100000 43000 45147 3 6 |
2800000 1 100000 43000 45147 3 6 |
2900000 1 100000 43000 45147 3 6 |
3000000 1 100000 43000 45147 3 6 |
3100000 1 100000 43000 45147 3 6 |
3200000 1 100000 43000 45147 3 6 |
3300000 1 100000 43000 45147 3 6 |
3400000 1 100000 43000 45147 3 6 |
3458002 1 943002 438430 467037 13 29 |
3458002 1 319002 66758 70519 79 40 |
3458002 1 1971002 1811919 1932461 58 100 |
3500000 1 100000 43000 45162 3 6 |
3600000 1 100000 43000 45162 3 6 |
3700000 1 100000 43000 45162 3 6 |
3800000 1 100000 43000 45162 3 6 |
3900000 1 100000 43000 45162 3 6 |
4000000 1 3000000 1290000 1375618 80 90 |
4000000 1 100000 43000 45162 3 6 |
4100000 1 100000 43000 45162 3 6 |
4200000 1 100000 43000 45162 3 6 |
4300000 1 100000 43000 45162 3 6 |
4400000 1 100000 43000 45162 3 6 |
4500000 1 100000 43000 45162 3 6 |
4600000 1 100000 43000 45162 3 6 |
4700000 1 100000 43000 45162 3 6 |
4800000 1 100000 43000 45162 3 6 |
4900000 1 100000 43000 45162 3 6 |
5000000 1 100000 43000 45162 3 6 |
5100000 1 100000 43000 45162 3 6 |
5200000 1 100000 43000 45162 3 6 |
5300000 1 100000 43000 45162 3 6 |
5400000 1 100000 43000 45162 3 6 |
5500000 1 100000 43000 45162 3 6 |
5529004 1 280002 51947 54714 61 99 |
5600000 1 100000 43000 45150 3 6 |
5700000 1 100000 43000 45150 3 6 |
5800000 1 100000 43000 45150 3 6 |
5900000 1 100000 43000 45150 3 6 |
5909006 1 783002 701100 747318 23 94 |
5909006 1 221002 28449 29636 42 93 |
5909006 1 2986002 135321 143613 62 5 |
5909006 1 2192002 1202931 1282748 85 33 |
6000000 1 100000 43000 45164 3 6 |
6100000 1 100000 43000 45164 3 6 |
6200000 1 100000 43000 45164 3 6 |
6300000 1 100000 43000 45164 3 6 |
6400000 1 100000 43000 45164 3 6 |
6500000 1 100000 43000 45164 3 6 |
6600000 1 100000 43000 45164 3 6 |
6700000 1 100000 43000 45164 3 6 |
6800000 1 100000 43000 45164 3 6 |
6900000 1 100000 43000 45164 3 6 |
7000000 1 3000000 1290000 1375645 80 90 |
7000000 1 100000 43000 45151 3 6 |
7100000 1 100000 43000 45151 3 6 |
7200000 1 100000 43000 45151 3 6 |
7300000 1 100000 43000 45151 3 6 |
7400000 1 100000 43000 45151 3 6 |
7500000 1 100000 43000 45151 3 6 |
7600000 1 100000 43000 45151 3 6 |
7700000 1 100000 43000 45151 3 6 |
7800000 1 100000 43000 45151 3 6 |
7900000 1 100000 43000 45151 3 6 |
8000000 1 100000 43000 45151 3 6 |
8100000 1 100000 43000 45151 3 6 |
8200000 1 100000 43000 45151 3 6 |
8201008 1 2675002 2422758 2584205 26 11 |
8201008 1 1692002 1000061 1066298 76 36 |
8300000 1 100000 43000 45165 3 6 |
8400000 1 100000 43000 45165 3 6 |
8500000 1 100000 43000 45165 3 6 |
8600000 1 100000 43000 45165 3 6 |
8700000 1 100000 43000 45165 3 6 |
8800000 1 100000 43000 45165 3 6 |
8900000 1 100000 43000 45165 3 6 |
9000000 1 100000 43000 45165 3 6 |
9100000 1 100000 43000 45165 3 6 |
9200000 1 100000 43000 45165 3 6 |
9300000 1 100000 43000 45165 3 6 |
9400000 1 100000 43000 45165 3 6 |
9500000 1 100000 43000 45165 3 6 |
9600000 1 100000 43000 45165 3 6 |
9700000 1 100000 43000 45165 3 6 |
9800000 1 100000 43000 45165 3 6 |
9900000 1 100000 43000 45165 3 6 |
9993010 1 1747002 1102547 1175651 42 24 |
9993010 1 1500002 259938 276646 35 10 |
9993010 1 2679002 778228 829611 16 25 |
10000000 1 3000000 1290000 1375626 80 90 |
10000000 1 100000 43000 45149 3 6 |
10100000 1 100000 43000 45149 3 6 |
10200000 1 100000 43000 45149 3 6 |
10300000 1 100000 43000 45149 3 6 |
10400000 1 100000 43000 45149 3 6 |
10500000 1 100000 43000 45149 3 6 |
10600000 1 100000 43000 45149 3 6 |
10700000 1 100000 43000 45149 3 6 |
10800000 1 100000 43000 45149 3 6 |
10900000 1 100000 43000 45149 3 6 |
11000000 1 100000 43000 45149 3 6 |
11100000 1 100000 43000 45149 3 6 |
11200000 1 100000 43000 45149 3 6 |
11300000 1 100000 43000 45149 3 6 |
11400000 1 100000 43000 45149 3 6 |
11500000 1 100000 43000 45149 3 6 |
11600000 1 100000 43000 45149 3 6 |
11700000 1 100000 43000 45149 3 6 |
11800000 1 100000 43000 45149 3 6 |
11900000 1 100000 43000 45149 3 6 |
12000000 1 100000 43000 45149 3 6 |
12100000 1 100000 43000 45149 3 6 |
12200000 1 100000 43000 45149 3 6 |
12300000 1 100000 43000 45149 3 6 |
12400000 1 100000 43000 45149 3 6 |
12500000 1 100000 43000 45149 3 6 |
12600000 1 100000 43000 45149 3 6 |
12700000 1 100000 43000 45149 3 6 |
12772012 1 1857002 1424469 1519060 86 68 |
12800000 1 100000 43000 45170 3 6 |
12900000 1 100000 43000 45170 3 6 |
13000000 1 3000000 1290000 1375641 80 90 |
13000000 1 100000 43000 45148 3 6 |
13100000 1 100000 43000 45148 3 6 |
13200000 1 100000 43000 45148 3 6 |
13300000 1 100000 43000 45148 3 6 |
13400000 1 100000 43000 45148 3 6 |
13500000 1 100000 43000 45148 3 6 |
13600000 1 100000 43000 45148 3 6 |
13700000 1 100000 43000 45148 3 6 |
13800000 1 100000 43000 45148 3 6 |
13900000 1 100000 43000 45148 3 6 |
14000000 1 100000 43000 45148 3 6 |
14100000 1 100000 43000 45148 3 6 |
14200000 1 100000 43000 45148 3 6 |
14300000 1 100000 43000 45148 3 6 |
14400000 1 100000 43000 45148 3 6 |
14500000 1 100000 43000 45148 3 6 |
14600000 1 100000 43000 45148 3 6 |
14700000 1 100000 43000 45148 3 6 |
14729014 1 1549002 794849 847343 90 5 |
14729014 1 2566002 692657 738320 99 77 |
14729014 1 1625002 1528924 1630583 32 67 |
14800000 1 100000 43000 45150 3 6 |
14900000 1 100000 43000 45150 3 6 |
15000000 1 100000 43000 45150 3 6 |
15100000 1 100000 43000 45150 3 6 |
15200000 1 100000 43000 45150 3 6 |
15300000 1 100000 43000 45150 3 6 |
15400000 1 100000 43000 45150 3 6 |
15500000 1 100000 43000 45150 3 6 |
15600000 1 100000 43000 45150 3 6 |
15700000 1 100000 43000 45150 3 6 |
15800000 1 100000 43000 45150 3 6 |
15900000 1 100000 43000 45150 3 6 |
16000000 1 3000000 1290000 1375627 80 90 |
16000000 1 100000 43000 45161 3 6 |
16100000 1 100000 43000 45161 3 6 |
16200000 1 100000 43000 45161 3 6 |
16300000 1 100000 43000 45161 3 6 |
16400000 1 100000 43000 45161 3 6 |
16454016 1 867002 65308 68968 66 27 |
16500000 1 100000 43000 45159 3 6 |
16600000 1 100000 43000 45159 3 6 |
16700000 1 100000 43000 45159 3 6 |
16800000 1 100000 43000 45159 3 6 |
16900000 1 100000 43000 45159 3 6 |
17000000 1 100000 43000 45159 3 6 |
17100000 1 100000 43000 45159 3 6 |
17200000 1 100000 43000 45159 3 6 |
17300000 1 100000 43000 45159 3 6 |
17400000 1 100000 43000 45159 3 6 |
17421018 1 2428002 993501 1059309 19 4 |
17500000 1 100000 43000 45150 3 6 |
17600000 1 100000 43000 45150 3 6 |
17700000 1 100000 43000 45150 3 6 |
17800000 1 100000 43000 45150 3 6 |
17900000 1 100000 43000 45150 3 6 |
18000000 1 100000 43000 45150 3 6 |
18100000 1 100000 43000 45150 3 6 |
18200000 1 100000 43000 45150 3 6 |
18300000 1 100000 43000 45150 3 6 |
18400000 1 100000 43000 45150 3 6 |
18500000 1 100000 43000 45150 3 6 |
18600000 1 100000 43000 45150 3 6 |
18700000 1 100000 43000 45150 3 6 |
18800000 1 100000 43000 45150 3 6 |
18900000 1 100000 43000 45150 3 6 |
19000000 1 3000000 1290000 1375649 80 90 |
19000000 1 100000 43000 45151 3 6 |
19100000 1 100000 43000 45151 3 6 |
19200000 1 100000 43000 45151 3 6 |
19300000 1 100000 43000 45151 3 6 |
19400000 1 100000 43000 45151 3 6 |
19500000 1 100000 43000 45151 3 6 |
19600000 1 100000 43000 45151 3 6 |
19700000 1 100000 43000 45151 3 6 |
19800000 1 100000 43000 45151 3 6 |
19900000 1 100000 43000 45151 3 6 |
19949020 1 1658002 611967 652213 45 83 |
20000000 1 100000 43000 45149 3 6 |
20100000 1 100000 43000 45149 3 6 |
20200000 1 100000 43000 45149 3 6 |
20300000 1 100000 43000 45149 3 6 |
20400000 1 100000 43000 45149 3 6 |
20500000 1 100000 43000 45149 3 6 |
20600000 1 100000 43000 45149 3 6 |
20700000 1 100000 43000 45149 3 6 |
20800000 1 100000 43000 45149 3 6 |
20900000 1 100000 43000 45149 3 6 |
21000000 1 100000 43000 45149 3 6 |
21100000 1 100000 43000 45149 3 6 |
21200000 1 100000 43000 45149 3 6 |
21300000 1 100000 43000 45149 3 6 |
21400000 1 100000 43000 45149 3 6 |
21500000 1 100000 43000 45149 3 6 |
21600000 1 100000 43000 45149 3 6 |
21700000 1 100000 43000 45149 3 6 |
21707022 1 2180002 406353 432805 65 32 |
21707022 1 1721002 1085102 1157051 34 19 |
21707022 1 1813002 117495 124617 24 19 |
21707022 1 230002 206519 219637 92 41 |
21707022 1 301002 153832 163425 62 44 |
21707022 1 869002 617579 658216 35 26 |
21707022 1 2803002 275935 293732 9 5 |
21800000 1 100000 43000 45148 3 6 |
21900000 1 100000 43000 45148 3 6 |
22000000 1 3000000 1290000 1375583 80 90 |
22000000 1 100000 43000 45168 3 6 |
22100000 1 100000 43000 45168 3 6 |
22200000 1 100000 43000 45168 3 6 |
22300000 1 100000 43000 45168 3 6 |
22400000 1 100000 43000 45168 3 6 |
22500000 1 100000 43000 45168 3 6 |
22600000 1 100000 43000 45168 3 6 |
22700000 1 100000 43000 45168 3 6 |
22800000 1 100000 43000 45168 3 6 |
22900000 1 100000 43000 45168 3 6 |
23000000 1 100000 43000 45168 3 6 |
23100000 1 100000 43000 45168 3 6 |
23200000 1 100000 43000 45168 3 6 |
23300000 1 100000 43000 45168 3 6 |
23400000 1 100000 43000 45168 3 6 |
23500000 1 100000 43000 45168 3 6 |
23600000 1 100000 43000 45168 3 6 |
23700000 1 100000 43000 45168 3 6 |
23800000 1 100000 43000 45168 3 6 |
23900000 1 100000 43000 45168 3 6 |
24000000 1 100000 43000 45168 3 6 |
24100000 1 100000 43000 45168 3 6 |
24200000 1 100000 43000 45168 3 6 |
24300000 1 100000 43000 45168 3 6 |
24400000 1 100000 43000 45168 3 6 |
24500000 1 100000 43000 45168 3 6 |
24600000 1 100000 43000 45168 3 6 |
24610024 1 66002 12309 12414 33 57 |
24610024 1 1796002 1780401 1898852 75 3 |
24610024 1 2972002 614719 655172 15 35 |
24610024 1 739002 421644 449125 29 75 |
24700000 1 100000 43000 45165 3 6 |
24800000 1 100000 43000 45165 3 6 |
24900000 1 100000 43000 45165 3 6 |
25000000 1 3000000 1290000 1375654 80 90 |
25000000 1 100000 43000 45164 3 6 |
25100000 1 100000 43000 45164 3 6 |
25200000 1 100000 43000 45164 3 6 |
25300000 1 100000 43000 45164 3 6 |
25400000 1 100000 43000 45164 3 6 |
25449026 1 811002 124146 131715 76 89 |
25449026 1 2980002 2740975 2923733 18 37 |
25449026 1 2602002 2283400 2435523 32 76 |
25449026 1 2446002 1728002 1842967 37 36 |
25500000 1 100000 43000 45151 3 6 |
25600000 1 100000 43000 45151 3 6 |
25700000 1 100000 43000 45151 3 6 |
25800000 1 100000 43000 45151 3 6 |
25900000 1 100000 43000 45151 3 6 |
26000000 1 100000 43000 45151 3 6 |
26100000 1 100000 43000 45151 3 6 |
26200000 1 100000 43000 45151 3 6 |
26300000 1 100000 43000 45151 3 6 |
26400000 1 100000 43000 45151 3 6 |
26500000 1 100000 43000 45151 3 6 |
26600000 1 100000 43000 45151 3 6 |
26700000 1 100000 43000 45151 3 6 |
26800000 1 100000 43000 45151 3 6 |
26900000 1 100000 43000 45151 3 6 |
27000000 1 100000 43000 45151 3 6 |
27100000 1 100000 43000 45151 3 6 |
27200000 1 100000 43000 45151 3 6 |
27300000 1 100000 43000 45151 3 6 |
27400000 1 100000 43000 45151 3 6 |
27500000 1 100000 43000 45151 3 6 |
27600000 1 100000 43000 45151 3 6 |
27700000 1 100000 43000 45151 3 6 |
27800000 1 100000 43000 45151 3 6 |
27900000 1 100000 43000 45151 3 6 |
27995028 1 1692002 1269001 1353185 59 87 |
27995028 1 675002 560238 597010 58 28 |
28000000 1 3000000 1290000 1375636 80 90 |
28000000 1 100000 43000 45149 3 6 |
28100000 1 100000 43000 45149 3 6 |
28200000 1 100000 43000 45149 3 6 |
28300000 1 100000 43000 45149 3 6 |
28400000 1 100000 43000 45149 3 6 |
28500000 1 100000 43000 45149 3 6 |
28600000 1 100000 43000 45149 3 6 |
28700000 1 100000 43000 45149 3 6 |
28770030 1 1445002 533591 568568 42 94 |
28770030 1 1684002 283701 301893 70 39 |
28770030 1 10002 7440 7219 60 38 |
28800000 1 100000 43000 45162 3 6 |
28880032 1 857002 416099 443225 36 0 |
28900000 1 100000 43000 45164 3 6 |
29000000 1 100000 43000 45164 3 6 |
29100000 1 100000 43000 45164 3 6 |
29200000 1 100000 43000 45164 3 6 |
29300000 1 100000 43000 45164 3 6 |
29400000 1 100000 43000 45164 3 6 |
29500000 1 100000 43000 45164 3 6 |
29600000 1 100000 43000 45164 3 6 |
29700000 1 100000 43000 45164 3 6 |
29800000 1 100000 43000 45164 3 6 |
29837034 1 203002 75765 80101 22 96 |
29900000 1 100000 43000 45165 3 6 |
30000000 1 100000 43000 45165 3 6 |
30100000 1 100000 43000 45165 3 6 |
30140036 1 1520002 504059 537075 68 8 |
30140036 1 1742002 169640 180299 28 0 |
30140036 1 2164002 583449 621753 20 20 |
30200000 1 100000 43000 45160 3 6 |
30300000 1 100000 43000 45160 3 6 |
30400000 1 100000 43000 45160 3 6 |
30500000 1 100000 43000 45160 3 6 |
30600000 1 100000 43000 45160 3 6 |
30700000 1 100000 43000 45160 3 6 |
30800000 1 100000 43000 45160 3 6 |
30900000 1 100000 43000 45160 3 6 |
31000000 1 3000000 1290000 1375655 80 90 |
31000000 1 100000 43000 45146 3 6 |
31100000 1 100000 43000 45146 3 6 |
31200000 1 100000 43000 45146 3 6 |
31300000 1 100000 43000 45146 3 6 |
31400000 1 100000 43000 45146 3 6 |
31500000 1 100000 43000 45146 3 6 |
31600000 1 100000 43000 45146 3 6 |
31700000 1 100000 43000 45146 3 6 |
31800000 1 100000 43000 45146 3 6 |
31900000 1 100000 43000 45146 3 6 |
32000000 1 100000 43000 45146 3 6 |
32100000 1 100000 43000 45146 3 6 |
32200000 1 100000 43000 45146 3 6 |
32300000 1 100000 43000 45146 3 6 |
32400000 1 100000 43000 45146 3 6 |
32404038 1 1406002 1078611 1150106 82 76 |
32500000 1 100000 43000 45147 3 6 |
32600000 1 100000 43000 45147 3 6 |
32700000 1 100000 43000 45147 3 6 |
32800000 1 100000 43000 45147 3 6 |
32900000 1 100000 43000 45147 3 6 |
33000000 1 100000 43000 45147 3 6 |
33100000 1 100000 43000 45147 3 6 |
33200000 1 100000 43000 45147 3 6 |
33300000 1 100000 43000 45147 3 6 |
33400000 1 100000 43000 45147 3 6 |
33500000 1 100000 43000 45147 3 6 |
33600000 1 100000 43000 45147 3 6 |
33700000 1 100000 43000 45147 3 6 |
33800000 1 100000 43000 45147 3 6 |
33900000 1 100000 43000 45147 3 6 |
33910040 1 2480002 371141 395283 70 40 |
34000000 1 3000000 1290000 1375595 80 90 |
34000000 1 100000 43000 45170 3 6 |
34100000 1 100000 43000 45170 3 6 |
34200000 1 100000 43000 45170 3 6 |
34300000 1 100000 43000 45170 3 6 |
34400000 1 100000 43000 45170 3 6 |
34500000 1 100000 43000 45170 3 6 |
34600000 1 100000 43000 45170 3 6 |
34700000 1 100000 43000 45170 3 6 |
34800000 1 100000 43000 45170 3 6 |
34900000 1 100000 43000 45170 3 6 |
35000000 1 100000 43000 45170 3 6 |
35100000 1 100000 43000 45170 3 6 |
35200000 1 100000 43000 45170 3 6 |
35300000 1 100000 43000 45170 3 6 |
35400000 1 100000 43000 45170 3 6 |
35500000 1 100000 43000 45170 3 6 |
35600000 1 100000 43000 45170 3 6 |
35700000 1 100000 43000 45170 3 6 |
35800000 1 100000 43000 45170 3 6 |
35900000 1 100000 43000 45170 3 6 |
36000000 1 100000 43000 45170 3 6 |
36100000 1 100000 43000 45170 3 6 |
36200000 1 100000 43000 45170 3 6 |
36300000 1 100000 43000 45170 3 6 |
36400000 1 100000 43000 45170 3 6 |
36490042 1 2661002 264134 281112 3 95 |
36500000 1 100000 43000 45166 3 6 |
36600000 1 100000 43000 45166 3 6 |
36700000 1 100000 43000 45166 3 6 |
36800000 1 100000 43000 45166 3 6 |
36900000 1 100000 43000 45166 3 6 |
37000000 1 3000000 1290000 1375620 80 90 |
37000000 1 100000 43000 45146 3 6 |
37100000 1 100000 43000 45146 3 6 |
37200000 1 100000 43000 45146 3 6 |
37300000 1 100000 43000 45146 3 6 |
37400000 1 100000 43000 45146 3 6 |
37500000 1 100000 43000 45146 3 6 |
37600000 1 100000 43000 45146 3 6 |
37700000 1 100000 43000 45146 3 6 |
37800000 1 100000 43000 45146 3 6 |
37900000 1 100000 43000 45146 3 6 |
38000000 1 100000 43000 45146 3 6 |
38100000 1 100000 43000 45146 3 6 |
38200000 1 100000 43000 45146 3 6 |
38300000 1 100000 43000 45146 3 6 |
38400000 1 100000 43000 45146 3 6 |
38500000 1 100000 43000 45146 3 6 |
38600000 1 100000 43000 45146 3 6 |
38700000 1 100000 43000 45146 3 6 |
38800000 1 100000 43000 45146 3 6 |
38900000 1 100000 43000 45146 3 6 |
39000000 1 100000 43000 45146 3 6 |
39100000 1 100000 43000 45146 3 6 |
39200000 1 100000 43000 45146 3 6 |
39251044 1 545002 504056 537082 20 31 |
39300000 1 100000 43000 45144 3 6 |
39400000 1 100000 43000 45144 3 6 |
39500000 1 100000 43000 45144 3 6 |
39600000 1 100000 43000 45144 3 6 |
39700000 1 100000 43000 45144 3 6 |
39800000 1 100000 43000 45144 3 6 |
39896046 1 564002 376511 401022 98 80 |
39896046 1 817002 150939 160339 78 43 |
39896046 1 353002 99123 105013 73 15 |
39896046 1 2506002 714365 761476 99 84 |
39900000 1 100000 43000 45149 3 6 |
40000000 1 3000000 1290000 1375660 80 90 |
40000000 1 100000 43000 45147 3 6 |
40100000 1 100000 43000 45147 3 6 |
40200000 1 100000 43000 45147 3 6 |
40300000 1 100000 43000 45147 3 6 |
40400000 1 100000 43000 45147 3 6 |
40500000 1 100000 43000 45147 3 6 |
40600000 1 100000 43000 45147 3 6 |
40700000 1 100000 43000 45147 3 6 |
40800000 1 100000 43000 45147 3 6 |
40900000 1 100000 43000 45147 3 6 |
41000000 1 100000 43000 45147 3 6 |
41100000 1 100000 43000 45147 3 6 |
41200000 1 100000 43000 45147 3 6 |
41300000 1 100000 43000 45147 3 6 |
41400000 1 100000 43000 45147 3 6 |
41500000 1 100000 43000 45147 3 6 |
41600000 1 100000 43000 45147 3 6 |
41700000 1 100000 43000 45147 3 6 |
41800000 1 100000 43000 45147 3 6 |
41900000 1 100000 43000 45147 3 6 |
42000000 1 100000 43000 45147 3 6 |
42100000 1 100000 43000 45147 3 6 |
42200000 1 100000 43000 45147 3 6 |
42300000 1 100000 43000 45147 3 6 |
42400000 1 100000 43000 45147 3 6 |
42500000 1 100000 43000 45147 3 6 |
42502048 1 130002 71538 75588 72 0 |
42502048 1 665002 347830 370323 38 52 |
42502048 1 1046002 3114 2602 68 72 |
42600000 1 100000 43000 45153 3 6 |
42700000 1 100000 43000 45153 3 6 |
42800000 1 100000 43000 45153 3 6 |
42900000 1 100000 43000 45153 3 6 |
43000000 1 3000000 1290000 1375609 80 90 |
43000000 1 100000 43000 45149 3 6 |
43100000 1 100000 43000 45149 3 6 |
43200000 1 100000 43000 45149 3 6 |
43300000 1 100000 43000 45149 3 6 |
43400000 1 100000 43000 45149 3 6 |
43500000 1 100000 43000 45149 3 6 |
43600000 1 100000 43000 45149 3 6 |
43648050 1 2643002 1225965 1307299 91 53 |
43700000 1 100000 43000 45165 3 6 |
43800000 1 100000 43000 45165 3 6 |
43900000 1 100000 43000 45165 3 6 |
44000000 1 100000 43000 45165 3 6 |
44100000 1 100000 43000 45165 3 6 |
44200000 1 100000 43000 45165 3 6 |
44300000 1 100000 43000 45165 3 6 |
44400000 1 100000 43000 45165 3 6 |
44500000 1 100000 43000 45165 3 6 |
44600000 1 100000 43000 45165 3 6 |
44700000 1 100000 43000 45165 3 6 |
44800000 1 100000 43000 45165 3 6 |
44900000 1 100000 43000 45165 3 6 |
45000000 1 100000 43000 45165 3 6 |
45100000 1 100000 43000 45165 3 6 |
45200000 1 100000 43000 45165 3 6 |
45300000 1 100000 43000 45165 3 6 |
45400000 1 100000 43000 45165 3 6 |
45500000 1 100000 43000 45165 3 6 |
45600000 1 100000 43000 45165 3 6 |
45700000 1 100000 43000 45165 3 6 |
45800000 1 100000 43000 45165 3 6 |
45900000 1 100000 43000 45165 3 6 |
46000000 1 3000000 1290000 1375638 80 90 |
46000000 1 100000 43000 45149 3 6 |
46100000 1 100000 43000 45149 3 6 |
46200000 1 100000 43000 45149 3 6 |
46300000 1 100000 43000 45149 3 6 |
46391052 1 17002 13374 13545 80 45 |
46391052 1 817002 664620 708390 65 14 |
46391052 1 2519002 497664 530232 47 65 |
46391052 1 1878002 1004593 1071143 95 42 |
46391052 1 286002 119700 127014 87 53 |
46400000 1 100000 43000 45163 3 6 |
46500000 1 100000 43000 45163 3 6 |
46600000 1 100000 43000 45163 3 6 |
46700000 1 100000 43000 45163 3 6 |
46777054 1 1430002 558646 595345 96 27 |
46777054 1 510002 266242 283355 49 2 |
46777054 1 1797002 1135184 1210461 97 22 |
46800000 1 100000 43000 45145 3 6 |
46900000 1 100000 43000 45145 3 6 |
47000000 1 100000 43000 45145 3 6 |
47100000 1 100000 43000 45145 3 6 |
47200000 1 100000 43000 45145 3 6 |
47300000 1 100000 43000 45145 3 6 |
47400000 1 100000 43000 45145 3 6 |
47500000 1 100000 43000 45145 3 6 |
47600000 1 100000 43000 45145 3 6 |
47700000 1 100000 43000 45145 3 6 |
47800000 1 100000 43000 45145 3 6 |
47900000 1 100000 43000 45145 3 6 |
48000000 1 100000 43000 45145 3 6 |
48100000 1 100000 43000 45145 3 6 |
48200000 1 100000 43000 45145 3 6 |
48300000 1 100000 43000 45145 3 6 |
48400000 1 100000 43000 45145 3 6 |
48500000 1 100000 43000 45145 3 6 |
48600000 1 100000 43000 45145 3 6 |
48674056 1 463002 194466 206717 24 90 |
48674056 1 535002 252525 268647 85 11 |
48700000 1 100000 43000 45167 3 6 |
48800000 1 100000 43000 45167 3 6 |
48900000 1 100000 43000 45167 3 6 |
49000000 1 3000000 1290000 1375586 80 90 |
49000000 1 100000 43000 45165 3 6 |
49100000 1 100000 43000 45165 3 6 |
49200000 1 100000 43000 45165 3 6 |
49300000 1 100000 43000 45165 3 6 |
49309058 1 2898002 1890030 2015829 86 82 |
49309058 1 368002 109137 115699 97 81 |
49400000 1 100000 43000 45149 3 6 |
49500000 1 100000 43000 45149 3 6 |
49600000 1 100000 43000 45149 3 6 |
49700000 1 100000 43000 45149 3 6 |
49777060 1 910002 378373 402977 33 11 |
49800000 1 100000 43000 45149 3 6 |
49900000 1 100000 43000 45149 3 6 |
50000000 1 100000 43000 45149 3 6 |
50100000 1 100000 43000 45149 3 6 |
50200000 1 100000 43000 45149 3 6 |
50300000 1 100000 43000 45149 3 6 |
50400000 1 100000 43000 45149 3 6 |
50500000 1 100000 43000 45149 3 6 |
50600000 1 100000 43000 45149 3 6 |
50700000 1 100000 43000 45149 3 6 |
50787062 1 860002 173620 184472 61 41 |
50787062 1 504002 251581 267714 8 69 |
50800000 1 100000 43000 45149 3 6 |
50900000 1 100000 43000 45149 3 6 |
51000000 1 100000 43000 45149 3 6 |
51100000 1 100000 43000 45149 3 6 |
51200000 1 100000 43000 45149 3 6 |
51300000 1 100000 43000 45149 3 6 |
51391064 1 2968002 292892 311795 48 40 |
51400000 1 100000 43000 45148 3 6 |
51500000 1 100000 43000 45148 3 6 |
51600000 1 100000 43000 45148 3 6 |
51700000 1 100000 43000 45148 3 6 |
51800000 1 100000 43000 45148 3 6 |
51900000 1 100000 43000 45148 3 6 |
52000000 1 3000000 1290000 1375603 80 90 |
52000000 1 100000 43000 45166 3 6 |
52100000 1 100000 43000 45166 3 6 |
52200000 1 100000 43000 45166 3 6 |
52300000 1 100000 43000 45166 3 6 |
52400000 1 100000 43000 45166 3 6 |
52500000 1 100000 43000 45166 3 6 |
52600000 1 100000 43000 45166 3 6 |
52700000 1 100000 43000 45166 3 6 |
52800000 1 100000 43000 45166 3 6 |
52900000 1 100000 43000 45166 3 6 |
53000000 1 100000 43000 45166 3 6 |
53100000 1 100000 43000 45166 3 6 |
53200000 1 100000 43000 45166 3 6 |
53300000 1 100000 43000 45166 3 6 |
53400000 1 100000 43000 45166 3 6 |
53500000 1 100000 43000 45166 3 6 |
53600000 1 100000 43000 45166 3 6 |
53700000 1 100000 43000 45166 3 6 |
53800000 1 100000 43000 45166 3 6 |
53900000 1 100000 43000 45166 3 6 |
54000000 1 100000 43000 45166 3 6 |
54100000 1 100000 43000 45166 3 6 |
54200000 1 100000 43000 45166 3 6 |
54300000 1 100000 43000 45166 3 6 |
54400000 1 100000 43000 45166 3 6 |
54459066 1 2568002 420130 447532 62 49 |
54459066 1 2182002 1185687 1264350 63 82 |
54459066 1 1542002 1453522 1550084 3 22 |
54500000 1 100000 43000 45148 3 6 |
54600000 1 100000 43000 45148 3 6 |
54700000 1 100000 43000 45148 3 6 |
54800000 1 100000 43000 45148 3 6 |
54900000 1 100000 43000 45148 3 6 |
55000000 1 3000000 1290000 1375612 80 90 |
55000000 1 100000 43000 45165 3 6 |
55100000 1 100000 43000 45165 3 6 |
55200000 1 100000 43000 45165 3 6 |
55300000 1 100000 43000 45165 3 6 |
55400000 1 100000 43000 45165 3 6 |
55500000 1 100000 43000 45165 3 6 |
55600000 1 100000 43000 45165 3 6 |
55700000 1 100000 43000 45165 3 6 |
55800000 1 100000 43000 45165 3 6 |
55900000 1 100000 43000 45165 3 6 |
56000000 1 100000 43000 45165 3 6 |
56100000 1 100000 43000 45165 3 6 |
56101068 1 844002 779368 830787 71 91 |
56200000 1 100000 43000 45161 3 6 |
56300000 1 100000 43000 45161 3 6 |
56400000 1 100000 43000 45161 3 6 |
56500000 1 100000 43000 45161 3 6 |
56600000 1 100000 43000 45161 3 6 |
56700000 1 100000 43000 45161 3 6 |
56800000 1 100000 43000 45161 3 6 |
56900000 1 100000 43000 45161 3 6 |
57000000 1 100000 43000 45161 3 6 |
57045070 1 2107002 1333939 1422502 89 66 |
57100000 1 100000 43000 45162 3 6 |
57200000 1 100000 43000 45162 3 6 |
57300000 1 100000 43000 45162 3 6 |
57400000 1 100000 43000 45162 3 6 |
57500000 1 100000 43000 45162 3 6 |
57600000 1 100000 43000 45162 3 6 |
57700000 1 100000 43000 45162 3 6 |
57800000 1 100000 43000 45162 3 6 |
57900000 1 100000 43000 45162 3 6 |
58000000 1 3000000 1290000 1375629 80 90 |
58000000 1 100000 43000 45148 3 6 |
58100000 1 100000 43000 45148 3 6 |
58200000 1 100000 43000 45148 3 6 |
58300000 1 100000 43000 45148 3 6 |
58400000 1 100000 43000 45148 3 6 |
58500000 1 100000 43000 45148 3 6 |
58600000 1 100000 43000 45148 3 6 |
58700000 1 100000 43000 45148 3 6 |
58800000 1 100000 43000 45148 3 6 |
58900000 1 100000 43000 45148 3 6 |
59000000 1 100000 43000 45148 3 6 |
59100000 1 100000 43000 45148 3 6 |
59200000 1 100000 43000 45148 3 6 |
59252072 1 2696002 989242 1054767 1 49 |
59252072 1 2656002 770386 821226 79 27 |
59252072 1 329002 22627 23424 94 23 |
59300000 1 100000 43000 45167 3 6 |
59400000 1 100000 43000 45167 3 6 |
59500000 1 100000 43000 45167 3 6 |
59600000 1 100000 43000 45167 3 6 |
59681074 1 1794002 1556982 1660485 4 1 |
59681074 1 2417002 732124 780422 2 49 |
59681074 1 806002 252797 269008 48 43 |
59700000 1 100000 43000 45165 3 6 |
59800000 1 100000 43000 45165 3 6 |
59900000 1 100000 43000 45165 3 6 |
60000000 1 100000 43000 45165 3 6 |
60100000 1 100000 43000 45165 3 6 |
60200000 1 100000 43000 45165 3 6 |
60300000 1 100000 43000 45165 3 6 |
60400000 1 100000 43000 45165 3 6 |
60500000 1 100000 43000 45165 3 6 |
60600000 1 100000 43000 45165 3 6 |
60700000 1 100000 43000 45165 3 6 |
60800000 1 100000 43000 45165 3 6 |
60900000 1 100000 43000 45165 3 6 |
/unsupported/trunk/crunch/load/hpattern.dat |
---|
0,0 → 1,2 |
1 |
500063 36000 19896 20209 |
/unsupported/trunk/crunch/load/tune.c |
---|
0,0 → 1,151 |
/* |
* Project: S.Ha.R.K. |
* |
* Coordinators: |
* Giorgio Buttazzo <giorgio@sssup.it> |
* Paolo Gai <pj@gandalf.sssup.it> |
* |
* Authors : |
* Paolo Gai <pj@gandalf.sssup.it> |
* (see the web pages for full authors list) |
* |
* ReTiS Lab (Scuola Superiore S.Anna - Pisa - Italy) |
* |
* http://www.sssup.it |
* http://retis.sssup.it |
* http://shark.sssup.it |
*/ |
/** |
------------ |
CVS : $Id: tune.c,v 1.1 2004-07-05 14:17:16 pj Exp $ |
File: $File$ |
Revision: $Revision: 1.1 $ |
Last update: $Date: 2004-07-05 14:17:16 $ |
------------ |
**/ |
/* |
* Copyright (C) 2001 Paolo Gai |
* |
* This program is free software; you can redistribute it and/or modify |
* it under the terms of the GNU General Public License as published by |
* the Free Software Foundation; either version 2 of the License, or |
* (at your option) any later version. |
* |
* This program is distributed in the hope that it will be useful, |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with this program; if not, write to the Free Software |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* |
*/ |
#include "kernel/kern.h" |
/* |
* |
* Tuning the speed of the dummy loop for the value tasks... |
* |
*/ |
#define TUNE_THRESHOLD 80 |
int tune_CPU_speed(int len) |
{ |
int x, y, j; |
TIME bef, aft; |
char s[2] = { 'X', 0 }; |
char buf[20]; |
int load; |
// cprintf("\n\n\n\nlen=%d ",len); |
// return 1; |
load = 100000; |
x=10; y=10; // x and y positions |
for (;;) { |
bef = sys_gettime(NULL); |
for (j=0; j<load; j++) { |
s[0] = '*' + rand() % 100; |
puts_xy(x,y,rand()%15+1,s); |
} |
aft = sys_gettime(NULL); |
sprintf(buf,"%10d",(int)(aft-bef)); |
puts_xy(10,11,WHITE,buf); |
//cprintf("Tuning idle cycles: load=%d , time=%d ...\n", load, (int)(aft-bef)); |
if ((int)(aft-bef-len) < 0 && |
(int)(aft-bef-len) > -TUNE_THRESHOLD) |
return load; |
load = (int)(((double)(max(0,len-TUNE_THRESHOLD/2))*(double)load)/(double)(aft-bef)); |
} |
} |
// top number of iterations |
// less than 4 sec on my portable PC (pentium 2 400 Mhz) (!) |
//#define TUNE_TOP 5000000 |
// 1.8 sec max |
#define TUNE_TOP 2500000 |
int tune_CPU_speed2(int len) |
{ |
int x, y, j; |
TIME bef, aft; |
char s[2] = { 'X', 0 }; |
int bottom, top, load; |
bottom = 0; |
load = TUNE_TOP/2; |
top = TUNE_TOP; |
x=10; y=10; // x and y positions |
for (;;) { |
bef = sys_gettime(NULL); |
for (j=0; j<load; j++) { |
s[0] = '*' + rand() % 100; |
puts_xy(x,y,rand()%15+1,s); |
} |
aft = sys_gettime(NULL); |
cprintf("Tuning idle cycles: load=%d , time=%d ...\n", load, (int)(aft-bef)); |
if (load > TUNE_TOP-10) { |
cprintf("This PC is too fast: please increase the TUNE_TOP define!\n"); |
sys_end(); |
return load; |
} |
if ((int)(aft-bef-len) < 20 && (int)(aft-bef-len) > -20) |
return load; |
if (aft-bef > len) { |
top = load; |
load = (top+bottom)/2; |
} |
else { |
bottom = load; |
load = (top+bottom)/2; |
} |
} |
} |
/unsupported/trunk/crunch/load/new.bat |
---|
0,0 → 1,6 |
echo 60 > length.dat |
make |
make runstep1 |
x step2 |
x step3 |
make runstep4 |
/unsupported/trunk/crunch/load/dosfs.c |
---|
0,0 → 1,146 |
/* |
* Project: S.Ha.R.K. |
* |
* Coordinators: |
* Giorgio Buttazzo <giorgio@sssup.it> |
* Paolo Gai <pj@gandalf.sssup.it> |
* |
* Authors : |
* Paolo Gai <pj@gandalf.sssup.it> |
* (see the web pages for full authors list) |
* |
* ReTiS Lab (Scuola Superiore S.Anna - Pisa - Italy) |
* |
* http://www.sssup.it |
* http://retis.sssup.it |
* http://shark.sssup.it |
*/ |
/** |
------------ |
CVS : $Id: dosfs.c,v 1.1 2004-07-05 14:18:03 pj Exp $ |
File: $File$ |
Revision: $Revision: 1.1 $ |
Last update: $Date: 2004-07-05 14:18:03 $ |
------------ |
**/ |
/* |
* Copyright (C) 2001 Paolo Gai |
* |
* This program is free software; you can redistribute it and/or modify |
* it under the terms of the GNU General Public License as published by |
* the Free Software Foundation; either version 2 of the License, or |
* (at your option) any later version. |
* |
* This program is distributed in the hope that it will be useful, |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with this program; if not, write to the Free Software |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* |
*/ |
#include "kernel/kern.h" |
#include "string.h" |
#include "ll/i386/x-dos.h" |
/* |
* |
* Read/Write functions |
* |
*/ |
/* This is the buffer used by read_myfile */ |
char myfilebuf[1000]; |
/* This is the number of bytes read by read_myfile */ |
int myfilebuf_length; |
/* This function read myfile.txt (up to 1000 chars) */ |
void read_myfile(void) |
{ |
/* DOS file descriptor */ |
DOS_FILE *f; |
/* Error code */ |
int err; |
/* open the DOS file for reading (you can specify only "r" or "w") */ |
f = DOS_fopen("myfile.txt","r"); |
/* check for open errors */ |
if (!f) { |
/* error!! */ |
err = DOS_error(); |
/* note that if you call DOS_error() here, it return 0!!! */ |
cprintf("Error %d opening myfile.txt...\n", err); |
myfilebuf_length = 0; |
return; |
} |
/* read up to 1000 chars */ |
myfilebuf_length = DOS_fread(&myfilebuf,1,1000,f); |
/* check for errors */ |
err = DOS_error(); |
cprintf("Read %d bytes from myfile.txt...\n", myfilebuf_length); |
if (err) { |
cprintf("Error %d reading myfile.txt...\n", err); |
myfilebuf_length = 0; |
/* there is not return because I want to close the file! */ |
} |
/* Close the file */ |
DOS_fclose(f); |
} |
/* This function write myfile.out (up to 30 chars) */ |
void write_myfile(void *arg) |
{ |
DOS_FILE *f; /* DOS file descriptor */ |
int err; /* Error code */ |
int maxbytes; |
int writtenbytes; /* number of files written */ |
/* open the DOS file for writing (you can specify only "r" or "w") */ |
f = DOS_fopen("myfile.out","w"); |
/* check for open errors */ |
if (!f) { |
/* error!! */ |
err = DOS_error(); |
/* note that if you call DOS_error() here, it return 0!!! */ |
cprintf("Error %d opening myfile.out...\n", err); |
return; |
} |
/* write up to 30 bytes */ |
if (myfilebuf_length > 30) |
maxbytes = 30; |
else |
maxbytes = myfilebuf_length; |
writtenbytes = DOS_fwrite(myfilebuf,1,maxbytes,f); |
/* check for errors */ |
err = DOS_error(); |
cprintf("Written %d bytes into myfile.out...\n", writtenbytes); |
if (err) { |
cprintf("Error %d writing myfile.txt...\n", err); |
/* there is not return because I want to close the file! */ |
} |
/* Close the file */ |
DOS_fclose(f); |
} |
/unsupported/trunk/crunch/load/rrvalue.c |
---|
0,0 → 1,656 |
/* |
* Project: S.Ha.R.K. |
* |
* Coordinators: |
* Giorgio Buttazzo <giorgio@sssup.it> |
* Paolo Gai <pj@gandalf.sssup.it> |
* |
* Authors : |
* Paolo Gai <pj@gandalf.sssup.it> |
* Massimiliano Giorgi <massy@gandalf.sssup.it> |
* Luca Abeni <luca@gandalf.sssup.it> |
* (see the web pages for full authors list) |
* |
* ReTiS Lab (Scuola Superiore S.Anna - Pisa - Italy) |
* |
* http://www.sssup.it |
* http://retis.sssup.it |
* http://shark.sssup.it |
*/ |
/** |
------------ |
CVS : $Id: rrvalue.c,v 1.1 2004-07-05 14:17:14 pj Exp $ |
File: $File$ |
Revision: $Revision: 1.1 $ |
Last update: $Date: 2004-07-05 14:17:14 $ |
------------ |
This file contains the scheduling module RRVALUE (Round Robin) |
Read rrvalue.h for further details. |
**/ |
/* |
* Copyright (C) 2001 Paolo Gai |
* |
* This program is free software; you can redistribute it and/or modify |
* it under the terms of the GNU General Public License as published by |
* the Free Software Foundation; either version 2 of the License, or |
* (at your option) any later version. |
* |
* This program is distributed in the hope that it will be useful, |
* but WITHOUT ANY WARRSOFTANTY; without even the implied waRRSOFTanty of |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with this program; if not, write to the Free Software |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* |
*/ |
#include "rrvalue.h" |
#include <ll/stdio.h> |
#include <ll/string.h> |
#include <kernel/model.h> |
#include <kernel/descr.h> |
#include <kernel/var.h> |
#include <kernel/func.h> |
/*+ Status used in the level +*/ |
#define RRVALUE_READY MODULE_STATUS_BASE |
#define RRVALUE_DELAY MODULE_STATUS_BASE+1 |
#define RRVALUE_IDLE MODULE_STATUS_BASE+2 |
/*+ the level redefinition for the Round Robin level +*/ |
typedef struct { |
level_des l; /*+ the standard level descriptor +*/ |
int nact[MAX_PROC]; /*+ number of pending activations +*/ |
QQUEUE ready; /*+ the ready queue +*/ |
int slice; /*+ the level's time slice +*/ |
TIME period[MAX_PROC]; /*+ activation period +*/ |
struct timespec reactivation_time[MAX_PROC]; |
/*+ the time at witch the reactivation timer is post +*/ |
int reactivation_timer[MAX_PROC]; |
/*+ the recativation timer +*/ |
BYTE periodic[MAX_PROC]; |
struct multiboot_info *multiboot; /*+ used if the level have to insert |
the main task +*/ |
BYTE models; /*+ Task Model that the Module can Handle +*/ |
} RRVALUE_level_des; |
static char *RRVALUE_status_to_a(WORD status) |
{ |
if (status < MODULE_STATUS_BASE) |
return status_to_a(status); |
switch (status) { |
case RRVALUE_READY: return "RRVALUE_Ready"; |
case RRVALUE_DELAY: return "RRVALUE_Delay"; |
case RRVALUE_IDLE : return "RRVALUE_Idle"; |
default : return "RRVALUE_Unknown"; |
} |
} |
/* this is the periodic reactivation of the task... it is posted only |
if the task is a periodic task */ |
static void RRVALUE_timer_reactivate(void *par) |
{ |
PID p = (PID) par; |
RRVALUE_level_des *lev; |
// kern_printf("react"); |
lev = (RRVALUE_level_des *)level_table[proc_table[p].task_level]; |
if (proc_table[p].status == RRVALUE_IDLE) { |
/* the task has finished the current activation and must be |
reactivated */ |
proc_table[p].status = RRVALUE_READY; |
qq_insertlast(p,&lev->ready); |
event_need_reschedule(); |
} |
else if (lev->nact[p] >= 0) |
/* the task has not completed the current activation, so we save |
the activation incrementing nact... */ |
lev->nact[p]++; |
/* repost the event at the next period end... */ |
ADDUSEC2TIMESPEC(lev->period[p], &lev->reactivation_time[p]); |
lev->reactivation_timer[p] = kern_event_post(&lev->reactivation_time[p], |
RRVALUE_timer_reactivate, |
(void *)p); |
/* tracer stuff */ |
// trc_logevent(TRC_INTACTIVATION,&p); |
} |
/*+ this function is called when a task finish his delay +*/ |
static void RRVALUE_timer_delay(void *par) |
{ |
PID p = (PID) par; |
RRVALUE_level_des *lev; |
lev = (RRVALUE_level_des *)level_table[proc_table[p].task_level]; |
proc_table[p].status = RRVALUE_READY; |
qq_insertlast(p,&lev->ready); |
proc_table[p].delay_timer = NIL; /* Paranoia */ |
// kern_printf(" DELAY TIMER %d ", p); |
event_need_reschedule(); |
} |
static int RRVALUE_level_accept_task_model(LEVEL l, TASK_MODEL *m) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
if ((m->pclass == NRT_PCLASS || m->pclass == (NRT_PCLASS | l)) && lev->models & RRVALUE_ONLY_NRT) |
return 0; |
else if ((m->pclass == SOFT_PCLASS || m->pclass == (SOFT_PCLASS | l)) && lev->models & RRVALUE_ONLY_SOFT) |
return 0; |
else if ((m->pclass == HARD_PCLASS || m->pclass == (HARD_PCLASS | l)) && lev->models & RRVALUE_ONLY_HARD) |
return 0; |
else if ((m->pclass == VALUE_PCLASS || m->pclass == (VALUE_PCLASS | l)) && lev->models & RRVALUE_ONLY_VALUE) |
return 0; |
else |
return -1; |
} |
static int RRVALUE_level_accept_guest_model(LEVEL l, TASK_MODEL *m) |
{ |
return -1; |
} |
static void RRVALUE_level_status(LEVEL l) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
PID p = qq_queryfirst(&lev->ready); |
kern_printf("Slice: %d \n", lev->slice); |
while (p != NIL) { |
kern_printf("Pid: %d\t Name: %20s Status: %s\n",p,proc_table[p].name, |
RRVALUE_status_to_a(proc_table[p].status)); |
p = proc_table[p].next; |
} |
for (p=0; p<MAX_PROC; p++) |
if (proc_table[p].task_level == l && proc_table[p].status != RRVALUE_READY |
&& proc_table[p].status != FREE ) |
kern_printf("Pid: %d\t Name: %20s Status: %s\n",p,proc_table[p].name, |
RRVALUE_status_to_a(proc_table[p].status)); |
} |
/* This is not efficient but very fair :-) |
The need of all this stuff is because if a task execute a long time |
due to (shadow!) priority inheritance, then the task shall go to the |
tail of the queue many times... */ |
static PID RRVALUE_level_scheduler(LEVEL l) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
PID p; |
for (;;) { |
p = qq_queryfirst(&lev->ready); |
if (p == -1) |
return p; |
//{kern_printf("(s%d)",p); return p;} |
// kern_printf("(p=%d l=%d avail=%d wcet =%d)\n",p,l,proc_table[p].avail_time, proc_table[p].wcet); |
if (proc_table[p].avail_time <= 0) { |
proc_table[p].avail_time += proc_table[p].wcet; |
qq_extract(p,&lev->ready); |
qq_insertlast(p,&lev->ready); |
} |
else |
//{kern_printf("(s%d)",p); return p;} |
return p; |
} |
} |
static int RRVALUE_level_guarantee(LEVEL l, bandwidth_t *freebandwidth) |
{ |
/* the RRVALUE level always guarantee... the function is defined because |
there can be an aperiodic server at a level with less priority than |
the RRVALUE that need guarantee (e.g., a TBS server) */ |
return 1; |
} |
static int RRVALUE_task_create(LEVEL l, PID p, TASK_MODEL *m) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
// kern_printf("create %d mod %d\n",p,m->pclass); |
/* the task state is set at SLEEP by the general task_create |
the only thing to set remains the capacity stuffs that are set |
to the values passed in the model... */ |
/* I used the wcet field because using wcet can account if a task |
consume more than the timeslice... */ |
if (lev->models & RRVALUE_ONLY_NRT && |
(m->pclass == NRT_PCLASS || m->pclass == (NRT_PCLASS | l))) { |
NRT_TASK_MODEL *nrt = (NRT_TASK_MODEL *)m; |
// kern_printf("nrt"); |
if (nrt->slice) { |
proc_table[p].avail_time = nrt->slice; |
proc_table[p].wcet = nrt->slice; |
} |
else { |
proc_table[p].avail_time = lev->slice; |
proc_table[p].wcet = lev->slice; |
} |
proc_table[p].control |= CONTROL_CAP; |
if (nrt->arrivals == SAVE_ARRIVALS) |
lev->nact[p] = 0; |
else |
lev->nact[p] = -1; |
lev->periodic[p] = 0; |
lev->period[p] = 0; |
} |
else if (lev->models & RRVALUE_ONLY_SOFT && |
(m->pclass == SOFT_PCLASS || m->pclass == (SOFT_PCLASS | l))) { |
SOFT_TASK_MODEL *soft = (SOFT_TASK_MODEL *)m; |
// kern_printf("soft"); |
proc_table[p].avail_time = lev->slice; |
proc_table[p].wcet = lev->slice; |
proc_table[p].control |= CONTROL_CAP; |
if (soft->arrivals == SAVE_ARRIVALS) |
lev->nact[p] = 0; |
else |
lev->nact[p] = -1; |
if (soft->periodicity == PERIODIC) { |
lev->periodic[p] = 1; |
lev->period[p] = soft->period; |
} |
else { |
lev->periodic[p] = 0; |
lev->period[p] = 0; |
} |
} |
else if (lev->models & RRVALUE_ONLY_HARD && |
(m->pclass == HARD_PCLASS || m->pclass == (HARD_PCLASS | l))) { |
HARD_TASK_MODEL *hard = (HARD_TASK_MODEL *)m; |
// kern_printf("hard"); |
proc_table[p].avail_time = lev->slice; |
proc_table[p].wcet = lev->slice; |
proc_table[p].control |= CONTROL_CAP; |
lev->nact[p] = 0; |
if (hard->periodicity == PERIODIC) { |
lev->periodic[p] = 1; |
lev->period[p] = hard->mit; |
} |
else { |
lev->periodic[p] = 0; |
lev->period[p] = 0; |
} |
} |
if (lev->models & RRVALUE_ONLY_VALUE && |
(m->pclass == VALUE_PCLASS || m->pclass == (VALUE_PCLASS | l))) { |
VALUE_TASK_MODEL *nrt = (NRT_TASK_MODEL *)m; |
proc_table[p].avail_time = lev->slice; |
proc_table[p].wcet = lev->slice; |
proc_table[p].control |= CONTROL_CAP; |
lev->nact[p] = -1; |
lev->periodic[p] = 0; |
lev->period[p] = 0; |
} |
return 0; /* OK */ |
} |
static void RRVALUE_task_detach(LEVEL l, PID p) |
{ |
/* the RRVALUE level doesn't introduce any new field in the TASK_MODEL |
so, all detach stuffs are done by the task_create |
The task state is set at FREE by the general task_create */ |
} |
static int RRVALUE_task_eligible(LEVEL l, PID p) |
{ |
return 0; /* if the task p is chosen, it is always eligible */ |
} |
#ifdef __TEST1__ |
extern int testactive; |
extern struct timespec s_stime[]; |
extern TIME s_curr[]; |
extern TIME s_PID[]; |
extern int useds; |
#endif |
static void RRVALUE_task_dispatch(LEVEL l, PID p, int nostop) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
//static int p2count=0; |
/* the task state is set EXE by the scheduler() |
we extract the task from the ready queue |
NB: we can't assume that p is the first task in the queue!!! */ |
qq_extract(p, &lev->ready); |
} |
static void RRVALUE_task_epilogue(LEVEL l, PID p) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
/* check if the slice is finished and insert the task in the coRRVALUEect |
qqueue position */ |
if (proc_table[p].avail_time <= 0) { |
proc_table[p].avail_time += proc_table[p].wcet; |
qq_insertlast(p,&lev->ready); |
} |
else |
/* curr is >0, so the running task have to run for another cuRRVALUE usec */ |
qq_insertfirst(p,&lev->ready); |
proc_table[p].status = RRVALUE_READY; |
} |
static void RRVALUE_task_activate(LEVEL l, PID p) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
/* Test if we are trying to activate a non sleeping task */ |
/* save activation (only if needed... */ |
if (proc_table[p].status != SLEEP && proc_table[p].status != RRVALUE_IDLE) { |
if (lev->nact[p] != -1) |
lev->nact[p]++; |
return; |
} |
ll_gettime(TIME_EXACT, &proc_table[p].request_time); |
/* Insert task in the coRRVALUEect position */ |
proc_table[p].status = RRVALUE_READY; |
qq_insertlast(p,&lev->ready); |
/* Set the reactivation timer */ |
if (lev->periodic[p]) |
{ |
TIMESPEC_ASSIGN(&lev->reactivation_time[p], &proc_table[p].request_time); |
ADDUSEC2TIMESPEC(lev->period[p], &lev->reactivation_time[p]); |
// TIMESPEC_ASSIGN(&lev->reactivation_time[p], &lev->cbs_dline[p]); |
lev->reactivation_timer[p] = kern_event_post(&lev->reactivation_time[p], |
RRVALUE_timer_reactivate, |
(void *)p); |
} |
} |
static void RRVALUE_task_insert(LEVEL l, PID p) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
/* Similar to RRVALUE_task_activate, but we don't check in what state |
the task is and we don't set the request_time */ |
/* Insert task in the coRRVALUEect position */ |
proc_table[p].status = RRVALUE_READY; |
qq_insertlast(p,&lev->ready); |
} |
static void RRVALUE_task_extract(LEVEL l, PID p) |
{ |
/* Extract the running task from the level |
. we have already extract it from the ready queue at the dispatch time. |
. the capacity event have to be removed by the generic kernel |
. the wcet don't need modification... |
. the state of the task is set by the calling function |
So, we do nothing!!! |
*/ |
} |
static void RRVALUE_task_endcycle(LEVEL l, PID p) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
if (lev->nact[p] > 0) { |
/* continue!!!! */ |
ll_gettime(TIME_EXACT, &proc_table[p].request_time); |
lev->nact[p]--; |
// qq_insertlast(p,&lev->ready); |
qq_insertfirst(p,&lev->ready); |
proc_table[p].status = RRVALUE_READY; |
} |
else |
proc_table[p].status = RRVALUE_IDLE; |
} |
static void RRVALUE_task_end(LEVEL l, PID p) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
lev->nact[p] = -1; |
/* we delete the reactivation timer */ |
if (lev->periodic[p]) { |
event_delete(lev->reactivation_timer[p]); |
lev->reactivation_timer[p] = -1; |
} |
/* then, we insert the task in the free queue */ |
proc_table[p].status = FREE; |
q_insert(p,&freedesc); |
} |
static void RRVALUE_task_sleep(LEVEL l, PID p) |
{ |
RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
if (lev->nact[p] >= 0) lev->nact[p] = 0; |
/* we delete the reactivation timer */ |
if (lev->periodic[p]) { |
event_delete(lev->reactivation_timer[p]); |
lev->reactivation_timer[p] = -1; |
} |
proc_table[p].status = SLEEP; |
} |
static void RRVALUE_task_delay(LEVEL l, PID p, TIME usdelay) |
{ |
// RRVALUE_level_des *lev = (RRVALUE_level_des *)(level_table[l]); |
struct timespec wakeuptime; |
/* equal to RRVALUE_task_endcycle */ |
proc_table[p].status = RRVALUE_DELAY; |
/* we need to delete this event if we kill the task while it is sleeping */ |
ll_gettime(TIME_EXACT,&wakeuptime); |
ADDUSEC2TIMESPEC(usdelay,&wakeuptime); |
proc_table[p].delay_timer = kern_event_post(&wakeuptime, |
RRVALUE_timer_delay, |
(void *)p); |
} |
static int RRVALUE_guest_create(LEVEL l, PID p, TASK_MODEL *m) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); return 0; } |
static void RRVALUE_guest_detach(LEVEL l, PID p) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); } |
static void RRVALUE_guest_dispatch(LEVEL l, PID p, int nostop) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); } |
static void RRVALUE_guest_epilogue(LEVEL l, PID p) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); } |
static void RRVALUE_guest_activate(LEVEL l, PID p) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); } |
static void RRVALUE_guest_insert(LEVEL l, PID p) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); } |
static void RRVALUE_guest_extract(LEVEL l, PID p) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); } |
static void RRVALUE_guest_endcycle(LEVEL l, PID p) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); } |
static void RRVALUE_guest_end(LEVEL l, PID p) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); } |
static void RRVALUE_guest_sleep(LEVEL l, PID p) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); } |
static void RRVALUE_guest_delay(LEVEL l, PID p,DWORD tickdelay) |
{ kern_raise(XUNVALID_GUEST,exec_shadow); } |
/* Registration functions */ |
/*+ This init function install the "main" task +*/ |
static void RRVALUE_call_main(void *l) |
{ |
LEVEL lev; |
PID p; |
NRT_TASK_MODEL m; |
void *mb; |
lev = (LEVEL)l; |
nrt_task_default_model(m); |
nrt_task_def_level(m,lev); /* with this we are sure that the task aRRVALUEives |
to the coRRVALUEect level */ |
mb = ((RRVALUE_level_des *)level_table[lev])->multiboot; |
nrt_task_def_arg(m,mb); |
nrt_task_def_usemath(m); |
nrt_task_def_nokill(m); |
nrt_task_def_ctrl_jet(m); |
p = task_create("Main", __init__, (TASK_MODEL *)&m, NULL); |
if (p == NIL) |
printk("\nPanic!!! can't create main task...\n"); |
RRVALUE_task_activate(lev,p); |
} |
/*+ Registration function: |
TIME slice the slice for the Round Robin queue |
int createmain 1 if the level creates the main task 0 otherwise |
struct multiboot_info *mb used if createmain specified +*/ |
void RRVALUE_register_level(TIME slice, |
int createmain, |
struct multiboot_info *mb, |
BYTE models) |
{ |
LEVEL l; /* the level that we register */ |
RRVALUE_level_des *lev; /* for readableness only */ |
PID i; |
printk("RRVALUE_register_level\n"); |
/* request an entry in the level_table */ |
l = level_alloc_descriptor(); |
/* alloc the space needed for the RRVALUE_level_des */ |
lev = (RRVALUE_level_des *)kern_alloc(sizeof(RRVALUE_level_des)); |
printk(" lev=%d\n",(int)lev); |
/* update the level_table with the new entry */ |
level_table[l] = (level_des *)lev; |
/* fill the standard descriptor */ |
strncpy(lev->l.level_name, RRVALUE_LEVELNAME, MAX_LEVELNAME); |
lev->l.level_code = RRVALUE_LEVEL_CODE; |
lev->l.level_version = RRVALUE_LEVEL_VERSION; |
lev->l.level_accept_task_model = RRVALUE_level_accept_task_model; |
lev->l.level_accept_guest_model = RRVALUE_level_accept_guest_model; |
lev->l.level_status = RRVALUE_level_status; |
lev->l.level_scheduler = RRVALUE_level_scheduler; |
lev->l.level_guarantee = RRVALUE_level_guarantee; |
lev->l.task_create = RRVALUE_task_create; |
lev->l.task_detach = RRVALUE_task_detach; |
lev->l.task_eligible = RRVALUE_task_eligible; |
lev->l.task_dispatch = RRVALUE_task_dispatch; |
lev->l.task_epilogue = RRVALUE_task_epilogue; |
lev->l.task_activate = RRVALUE_task_activate; |
lev->l.task_insert = RRVALUE_task_insert; |
lev->l.task_extract = RRVALUE_task_extract; |
lev->l.task_endcycle = RRVALUE_task_endcycle; |
lev->l.task_end = RRVALUE_task_end; |
lev->l.task_sleep = RRVALUE_task_sleep; |
lev->l.task_delay = RRVALUE_task_delay; |
lev->l.guest_create = RRVALUE_guest_create; |
lev->l.guest_detach = RRVALUE_guest_detach; |
lev->l.guest_dispatch = RRVALUE_guest_dispatch; |
lev->l.guest_epilogue = RRVALUE_guest_epilogue; |
lev->l.guest_activate = RRVALUE_guest_activate; |
lev->l.guest_insert = RRVALUE_guest_insert; |
lev->l.guest_extract = RRVALUE_guest_extract; |
lev->l.guest_endcycle = RRVALUE_guest_endcycle; |
lev->l.guest_end = RRVALUE_guest_end; |
lev->l.guest_sleep = RRVALUE_guest_sleep; |
lev->l.guest_delay = RRVALUE_guest_delay; |
/* fill the RRVALUE descriptor part */ |
for (i = 0; i < MAX_PROC; i++) { |
lev->nact[i] = -1; |
NULL_TIMESPEC(&lev->reactivation_time[i]); |
lev->reactivation_timer[i] = -1; |
lev->periodic[i] = 0; |
lev->period[i] = 0; |
} |
qq_init(&lev->ready); |
if (slice < RRVALUE_MINIMUM_SLICE) slice = RRVALUE_MINIMUM_SLICE; |
if (slice > RRVALUE_MAXIMUM_SLICE) slice = RRVALUE_MAXIMUM_SLICE; |
lev->slice = slice; |
lev->multiboot = mb; |
lev->models = models; |
if (createmain) |
sys_atrunlevel(RRVALUE_call_main,(void *) l, RUNLEVEL_INIT); |
} |
/unsupported/trunk/crunch/load/tune.h |
---|
0,0 → 1,58 |
/* |
* Project: S.Ha.R.K. |
* |
* Coordinators: |
* Giorgio Buttazzo <giorgio@sssup.it> |
* Paolo Gai <pj@gandalf.sssup.it> |
* |
* Authors : |
* Paolo Gai <pj@gandalf.sssup.it> |
* (see the web pages for full authors list) |
* |
* ReTiS Lab (Scuola Superiore S.Anna - Pisa - Italy) |
* |
* http://www.sssup.it |
* http://retis.sssup.it |
* http://shark.sssup.it |
*/ |
/** |
------------ |
CVS : $Id: tune.h,v 1.1 2004-07-05 14:17:16 pj Exp $ |
File: $File$ |
Revision: $Revision: 1.1 $ |
Last update: $Date: 2004-07-05 14:17:16 $ |
------------ |
**/ |
/* |
* Copyright (C) 2001 Paolo Gai |
* |
* This program is free software; you can redistribute it and/or modify |
* it under the terms of the GNU General Public License as published by |
* the Free Software Foundation; either version 2 of the License, or |
* (at your option) any later version. |
* |
* This program is distributed in the hope that it will be useful, |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with this program; if not, write to the Free Software |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* |
*/ |
#ifndef __VALUE_VALUE_H__ |
#define __VALUE_VALUE_H__ |
/* |
* This function simply tune a for loop in a way that it will take |
*/ |
int tune_CPU_speed(int len); |
#endif |
/unsupported/trunk/crunch/load/rrvalue.h |
---|
0,0 → 1,128 |
/* |
* Project: S.Ha.R.K. |
* |
* Coordinators: |
* Giorgio Buttazzo <giorgio@sssup.it> |
* Paolo Gai <pj@gandalf.sssup.it> |
* |
* Authors : |
* Paolo Gai <pj@gandalf.sssup.it> |
* Massimiliano Giorgi <massy@gandalf.sssup.it> |
* Luca Abeni <luca@gandalf.sssup.it> |
* (see the web pages for full authors list) |
* |
* ReTiS Lab (Scuola Superiore S.Anna - Pisa - Italy) |
* |
* http://www.sssup.it |
* http://retis.sssup.it |
* http://shark.sssup.it |
*/ |
/** |
------------ |
CVS : $Id: rrvalue.h,v 1.1 2004-07-05 14:17:15 pj Exp $ |
File: $File$ |
Revision: $Revision: 1.1 $ |
Last update: $Date: 2004-07-05 14:17:15 $ |
------------ |
This file contains the scheduling module RRVALUE (Round Robin for |
Hard & Soft & Value Model) |
Title: |
RRVALUE (Round Robin) version 2 |
Task Models Accepted: |
NRT_TASK_MODEL - Non-Realtime Tasks |
weight field is ignored |
slice field is used to set the slice of a task, if it is !=0 |
policy field is ignored |
inherit field is ignored |
SOFT_TASK_MODEL - Soft tasks |
only the periodicity and the met are used. |
HARD_TASK_MODEL - Hard tasks |
only the periodicity and the period are used. |
VALUE_TASK_MODEL - Value tasks |
nothing is used yet |
Description: |
See the RRSOFT Description. |
It also accepts VALUE_TASK Models |
Exceptions raised: |
XUNVALID_GUEST |
This level doesn't support guests. When a guest operation |
is called, the exception is raised. |
Restrictions & special features: |
- if specified, it creates at init time a task, |
called "Main", attached to the function __init__(). |
- There must be only one module in the system that creates a task |
attached to the function __init__(). |
- The level tries to guarantee that a task uses a "full" timeslice |
before going to the queue tail. "full" means that a task can execute |
a maximum time of slice+sys_tick due to the approx. done by |
the Virtual Machine. If a task execute more time than the slice, |
the next time it execute less... |
**/ |
/* |
* Copyright (C) 2001 Paolo Gai |
* |
* This program is free software; you can redistribute it and/or modify |
* it under the terms of the GNU General Public License as published by |
* the Free Software Foundation; either version 2 of the License, or |
* (at your option) any later version. |
* |
* This program is distributed in the hope that it will be useful, |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with this program; if not, write to the Free Software |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* |
*/ |
#ifndef __RRVALUE_H__ |
#define __RRVALUE_H__ |
#include <ll/ll.h> |
#include <kernel/config.h> |
#include <sys/types.h> |
#include <kernel/types.h> |
#include <modules/codes.h> |
extern TASK __init__(void *arg); |
/*+ Const: +*/ |
#define RRVALUE_MINIMUM_SLICE 1000 /*+ Minimum Timeslice +*/ |
#define RRVALUE_MAXIMUM_SLICE 500000 /*+ Maximum Timeslice +*/ |
#define RRVALUE_MAIN_YES 1 /*+ The level creates the main +*/ |
#define RRVALUE_MAIN_NO 0 /*+ The level does'nt create the main +*/ |
#define RRVALUE_ONLY_HARD 1 /*+ The level accepts only Hard Tasks +*/ |
#define RRVALUE_ONLY_SOFT 2 /*+ The level accepts only Soft Tasks +*/ |
#define RRVALUE_ONLY_NRT 4 /*+ The level accepts only NRT Tasks +*/ |
#define RRVALUE_ONLY_VALUE 8 /*+ The level accepts only Value Tasks+*/ |
/*+ Registration function: |
TIME slice the slice for the Round Robin queue |
int createmain 1 if the level creates the main task 0 otherwise |
struct multiboot_info *mb used if createmain specified +*/ |
void RRVALUE_register_level(TIME slice, |
int createmain, |
struct multiboot_info *mb, |
BYTE models); |
#endif |
/unsupported/trunk/crunch/load/shape.dat |
---|
0,0 → 1,3 |
2 |
0 2448131304 |
60 0 |
/unsupported/trunk/crunch/load/vpattern.dat |
---|
0,0 → 1,708 |
707 |
1000000 3000000 1290000 1375649 80 90 |
1000000 100000 43000 45150 3 6 |
1000000 1500002 1481283 1579713 18 30 |
1000000 2921002 1208851 1289115 80 65 |
1000000 2358002 1004771 1071328 23 24 |
1100000 100000 43000 45147 3 6 |
1200000 100000 43000 45147 3 6 |
1300000 100000 43000 45147 3 6 |
1400000 100000 43000 45147 3 6 |
1500000 100000 43000 45147 3 6 |
1600000 100000 43000 45147 3 6 |
1700000 100000 43000 45147 3 6 |
1800000 100000 43000 45147 3 6 |
1900000 100000 43000 45147 3 6 |
2000000 100000 43000 45147 3 6 |
2100000 100000 43000 45147 3 6 |
2200000 100000 43000 45147 3 6 |
2300000 100000 43000 45147 3 6 |
2400000 100000 43000 45147 3 6 |
2500000 100000 43000 45147 3 6 |
2600000 100000 43000 45147 3 6 |
2700000 100000 43000 45147 3 6 |
2800000 100000 43000 45147 3 6 |
2900000 100000 43000 45147 3 6 |
3000000 100000 43000 45147 3 6 |
3100000 100000 43000 45147 3 6 |
3200000 100000 43000 45147 3 6 |
3300000 100000 43000 45147 3 6 |
3400000 100000 43000 45147 3 6 |
3458002 943002 438430 467037 13 29 |
3458002 319002 66758 70519 79 40 |
3458002 1971002 1811919 1932461 58 100 |
3500000 100000 43000 45162 3 6 |
3600000 100000 43000 45162 3 6 |
3700000 100000 43000 45162 3 6 |
3800000 100000 43000 45162 3 6 |
3900000 100000 43000 45162 3 6 |
4000000 3000000 1290000 1375618 80 90 |
4000000 100000 43000 45162 3 6 |
4100000 100000 43000 45162 3 6 |
4200000 100000 43000 45162 3 6 |
4300000 100000 43000 45162 3 6 |
4400000 100000 43000 45162 3 6 |
4500000 100000 43000 45162 3 6 |
4600000 100000 43000 45162 3 6 |
4700000 100000 43000 45162 3 6 |
4800000 100000 43000 45162 3 6 |
4900000 100000 43000 45162 3 6 |
5000000 100000 43000 45162 3 6 |
5100000 100000 43000 45162 3 6 |
5200000 100000 43000 45162 3 6 |
5300000 100000 43000 45162 3 6 |
5400000 100000 43000 45162 3 6 |
5500000 100000 43000 45162 3 6 |
5529004 280002 51947 54714 61 99 |
5600000 100000 43000 45150 3 6 |
5700000 100000 43000 45150 3 6 |
5800000 100000 43000 45150 3 6 |
5900000 100000 43000 45150 3 6 |
5909006 783002 701100 747318 23 94 |
5909006 221002 28449 29636 42 93 |
5909006 2986002 135321 143613 62 5 |
5909006 2192002 1202931 1282748 85 33 |
6000000 100000 43000 45164 3 6 |
6100000 100000 43000 45164 3 6 |
6200000 100000 43000 45164 3 6 |
6300000 100000 43000 45164 3 6 |
6400000 100000 43000 45164 3 6 |
6500000 100000 43000 45164 3 6 |
6600000 100000 43000 45164 3 6 |
6700000 100000 43000 45164 3 6 |
6800000 100000 43000 45164 3 6 |
6900000 100000 43000 45164 3 6 |
7000000 3000000 1290000 1375645 80 90 |
7000000 100000 43000 45151 3 6 |
7100000 100000 43000 45151 3 6 |
7200000 100000 43000 45151 3 6 |
7300000 100000 43000 45151 3 6 |
7400000 100000 43000 45151 3 6 |
7500000 100000 43000 45151 3 6 |
7600000 100000 43000 45151 3 6 |
7700000 100000 43000 45151 3 6 |
7800000 100000 43000 45151 3 6 |
7900000 100000 43000 45151 3 6 |
8000000 100000 43000 45151 3 6 |
8100000 100000 43000 45151 3 6 |
8200000 100000 43000 45151 3 6 |
8201008 2675002 2422758 2584205 26 11 |
8201008 1692002 1000061 1066298 76 36 |
8300000 100000 43000 45165 3 6 |
8400000 100000 43000 45165 3 6 |
8500000 100000 43000 45165 3 6 |
8600000 100000 43000 45165 3 6 |
8700000 100000 43000 45165 3 6 |
8800000 100000 43000 45165 3 6 |
8900000 100000 43000 45165 3 6 |
9000000 100000 43000 45165 3 6 |
9100000 100000 43000 45165 3 6 |
9200000 100000 43000 45165 3 6 |
9300000 100000 43000 45165 3 6 |
9400000 100000 43000 45165 3 6 |
9500000 100000 43000 45165 3 6 |
9600000 100000 43000 45165 3 6 |
9700000 100000 43000 45165 3 6 |
9800000 100000 43000 45165 3 6 |
9900000 100000 43000 45165 3 6 |
9993010 1747002 1102547 1175651 42 24 |
9993010 1500002 259938 276646 35 10 |
9993010 2679002 778228 829611 16 25 |
10000000 3000000 1290000 1375626 80 90 |
10000000 100000 43000 45149 3 6 |
10100000 100000 43000 45149 3 6 |
10200000 100000 43000 45149 3 6 |
10300000 100000 43000 45149 3 6 |
10400000 100000 43000 45149 3 6 |
10500000 100000 43000 45149 3 6 |
10600000 100000 43000 45149 3 6 |
10700000 100000 43000 45149 3 6 |
10800000 100000 43000 45149 3 6 |
10900000 100000 43000 45149 3 6 |
11000000 100000 43000 45149 3 6 |
11100000 100000 43000 45149 3 6 |
11200000 100000 43000 45149 3 6 |
11300000 100000 43000 45149 3 6 |
11400000 100000 43000 45149 3 6 |
11500000 100000 43000 45149 3 6 |
11600000 100000 43000 45149 3 6 |
11700000 100000 43000 45149 3 6 |
11800000 100000 43000 45149 3 6 |
11900000 100000 43000 45149 3 6 |
12000000 100000 43000 45149 3 6 |
12100000 100000 43000 45149 3 6 |
12200000 100000 43000 45149 3 6 |
12300000 100000 43000 45149 3 6 |
12400000 100000 43000 45149 3 6 |
12500000 100000 43000 45149 3 6 |
12600000 100000 43000 45149 3 6 |
12700000 100000 43000 45149 3 6 |
12772012 1857002 1424469 1519060 86 68 |
12800000 100000 43000 45170 3 6 |
12900000 100000 43000 45170 3 6 |
13000000 3000000 1290000 1375641 80 90 |
13000000 100000 43000 45148 3 6 |
13100000 100000 43000 45148 3 6 |
13200000 100000 43000 45148 3 6 |
13300000 100000 43000 45148 3 6 |
13400000 100000 43000 45148 3 6 |
13500000 100000 43000 45148 3 6 |
13600000 100000 43000 45148 3 6 |
13700000 100000 43000 45148 3 6 |
13800000 100000 43000 45148 3 6 |
13900000 100000 43000 45148 3 6 |
14000000 100000 43000 45148 3 6 |
14100000 100000 43000 45148 3 6 |
14200000 100000 43000 45148 3 6 |
14300000 100000 43000 45148 3 6 |
14400000 100000 43000 45148 3 6 |
14500000 100000 43000 45148 3 6 |
14600000 100000 43000 45148 3 6 |
14700000 100000 43000 45148 3 6 |
14729014 1549002 794849 847343 90 5 |
14729014 2566002 692657 738320 99 77 |
14729014 1625002 1528924 1630583 32 67 |
14800000 100000 43000 45150 3 6 |
14900000 100000 43000 45150 3 6 |
15000000 100000 43000 45150 3 6 |
15100000 100000 43000 45150 3 6 |
15200000 100000 43000 45150 3 6 |
15300000 100000 43000 45150 3 6 |
15400000 100000 43000 45150 3 6 |
15500000 100000 43000 45150 3 6 |
15600000 100000 43000 45150 3 6 |
15700000 100000 43000 45150 3 6 |
15800000 100000 43000 45150 3 6 |
15900000 100000 43000 45150 3 6 |
16000000 3000000 1290000 1375627 80 90 |
16000000 100000 43000 45161 3 6 |
16100000 100000 43000 45161 3 6 |
16200000 100000 43000 45161 3 6 |
16300000 100000 43000 45161 3 6 |
16400000 100000 43000 45161 3 6 |
16454016 867002 65308 68968 66 27 |
16500000 100000 43000 45159 3 6 |
16600000 100000 43000 45159 3 6 |
16700000 100000 43000 45159 3 6 |
16800000 100000 43000 45159 3 6 |
16900000 100000 43000 45159 3 6 |
17000000 100000 43000 45159 3 6 |
17100000 100000 43000 45159 3 6 |
17200000 100000 43000 45159 3 6 |
17300000 100000 43000 45159 3 6 |
17400000 100000 43000 45159 3 6 |
17421018 2428002 993501 1059309 19 4 |
17500000 100000 43000 45150 3 6 |
17600000 100000 43000 45150 3 6 |
17700000 100000 43000 45150 3 6 |
17800000 100000 43000 45150 3 6 |
17900000 100000 43000 45150 3 6 |
18000000 100000 43000 45150 3 6 |
18100000 100000 43000 45150 3 6 |
18200000 100000 43000 45150 3 6 |
18300000 100000 43000 45150 3 6 |
18400000 100000 43000 45150 3 6 |
18500000 100000 43000 45150 3 6 |
18600000 100000 43000 45150 3 6 |
18700000 100000 43000 45150 3 6 |
18800000 100000 43000 45150 3 6 |
18900000 100000 43000 45150 3 6 |
19000000 3000000 1290000 1375649 80 90 |
19000000 100000 43000 45151 3 6 |
19100000 100000 43000 45151 3 6 |
19200000 100000 43000 45151 3 6 |
19300000 100000 43000 45151 3 6 |
19400000 100000 43000 45151 3 6 |
19500000 100000 43000 45151 3 6 |
19600000 100000 43000 45151 3 6 |
19700000 100000 43000 45151 3 6 |
19800000 100000 43000 45151 3 6 |
19900000 100000 43000 45151 3 6 |
19949020 1658002 611967 652213 45 83 |
20000000 100000 43000 45149 3 6 |
20100000 100000 43000 45149 3 6 |
20200000 100000 43000 45149 3 6 |
20300000 100000 43000 45149 3 6 |
20400000 100000 43000 45149 3 6 |
20500000 100000 43000 45149 3 6 |
20600000 100000 43000 45149 3 6 |
20700000 100000 43000 45149 3 6 |
20800000 100000 43000 45149 3 6 |
20900000 100000 43000 45149 3 6 |
21000000 100000 43000 45149 3 6 |
21100000 100000 43000 45149 3 6 |
21200000 100000 43000 45149 3 6 |
21300000 100000 43000 45149 3 6 |
21400000 100000 43000 45149 3 6 |
21500000 100000 43000 45149 3 6 |
21600000 100000 43000 45149 3 6 |
21700000 100000 43000 45149 3 6 |
21707022 2180002 406353 432805 65 32 |
21707022 1721002 1085102 1157051 34 19 |
21707022 1813002 117495 124617 24 19 |
21707022 230002 206519 219637 92 41 |
21707022 301002 153832 163425 62 44 |
21707022 869002 617579 658216 35 26 |
21707022 2803002 275935 293732 9 5 |
21800000 100000 43000 45148 3 6 |
21900000 100000 43000 45148 3 6 |
22000000 3000000 1290000 1375583 80 90 |
22000000 100000 43000 45168 3 6 |
22100000 100000 43000 45168 3 6 |
22200000 100000 43000 45168 3 6 |
22300000 100000 43000 45168 3 6 |
22400000 100000 43000 45168 3 6 |
22500000 100000 43000 45168 3 6 |
22600000 100000 43000 45168 3 6 |
22700000 100000 43000 45168 3 6 |
22800000 100000 43000 45168 3 6 |
22900000 100000 43000 45168 3 6 |
23000000 100000 43000 45168 3 6 |
23100000 100000 43000 45168 3 6 |
23200000 100000 43000 45168 3 6 |
23300000 100000 43000 45168 3 6 |
23400000 100000 43000 45168 3 6 |
23500000 100000 43000 45168 3 6 |
23600000 100000 43000 45168 3 6 |
23700000 100000 43000 45168 3 6 |
23800000 100000 43000 45168 3 6 |
23900000 100000 43000 45168 3 6 |
24000000 100000 43000 45168 3 6 |
24100000 100000 43000 45168 3 6 |
24200000 100000 43000 45168 3 6 |
24300000 100000 43000 45168 3 6 |
24400000 100000 43000 45168 3 6 |
24500000 100000 43000 45168 3 6 |
24600000 100000 43000 45168 3 6 |
24610024 66002 12309 12414 33 57 |
24610024 1796002 1780401 1898852 75 3 |
24610024 2972002 614719 655172 15 35 |
24610024 739002 421644 449125 29 75 |
24700000 100000 43000 45165 3 6 |
24800000 100000 43000 45165 3 6 |
24900000 100000 43000 45165 3 6 |
25000000 3000000 1290000 1375654 80 90 |
25000000 100000 43000 45164 3 6 |
25100000 100000 43000 45164 3 6 |
25200000 100000 43000 45164 3 6 |
25300000 100000 43000 45164 3 6 |
25400000 100000 43000 45164 3 6 |
25449026 811002 124146 131715 76 89 |
25449026 2980002 2740975 2923733 18 37 |
25449026 2602002 2283400 2435523 32 76 |
25449026 2446002 1728002 1842967 37 36 |
25500000 100000 43000 45151 3 6 |
25600000 100000 43000 45151 3 6 |
25700000 100000 43000 45151 3 6 |
25800000 100000 43000 45151 3 6 |
25900000 100000 43000 45151 3 6 |
26000000 100000 43000 45151 3 6 |
26100000 100000 43000 45151 3 6 |
26200000 100000 43000 45151 3 6 |
26300000 100000 43000 45151 3 6 |
26400000 100000 43000 45151 3 6 |
26500000 100000 43000 45151 3 6 |
26600000 100000 43000 45151 3 6 |
26700000 100000 43000 45151 3 6 |
26800000 100000 43000 45151 3 6 |
26900000 100000 43000 45151 3 6 |
27000000 100000 43000 45151 3 6 |
27100000 100000 43000 45151 3 6 |
27200000 100000 43000 45151 3 6 |
27300000 100000 43000 45151 3 6 |
27400000 100000 43000 45151 3 6 |
27500000 100000 43000 45151 3 6 |
27600000 100000 43000 45151 3 6 |
27700000 100000 43000 45151 3 6 |
27800000 100000 43000 45151 3 6 |
27900000 100000 43000 45151 3 6 |
27995028 1692002 1269001 1353185 59 87 |
27995028 675002 560238 597010 58 28 |
28000000 3000000 1290000 1375636 80 90 |
28000000 100000 43000 45149 3 6 |
28100000 100000 43000 45149 3 6 |
28200000 100000 43000 45149 3 6 |
28300000 100000 43000 45149 3 6 |
28400000 100000 43000 45149 3 6 |
28500000 100000 43000 45149 3 6 |
28600000 100000 43000 45149 3 6 |
28700000 100000 43000 45149 3 6 |
28770030 1445002 533591 568568 42 94 |
28770030 1684002 283701 301893 70 39 |
28770030 10002 7440 7219 60 38 |
28800000 100000 43000 45162 3 6 |
28880032 857002 416099 443225 36 0 |
28900000 100000 43000 45164 3 6 |
29000000 100000 43000 45164 3 6 |
29100000 100000 43000 45164 3 6 |
29200000 100000 43000 45164 3 6 |
29300000 100000 43000 45164 3 6 |
29400000 100000 43000 45164 3 6 |
29500000 100000 43000 45164 3 6 |
29600000 100000 43000 45164 3 6 |
29700000 100000 43000 45164 3 6 |
29800000 100000 43000 45164 3 6 |
29837034 203002 75765 80101 22 96 |
29900000 100000 43000 45165 3 6 |
30000000 100000 43000 45165 3 6 |
30100000 100000 43000 45165 3 6 |
30140036 1520002 504059 537075 68 8 |
30140036 1742002 169640 180299 28 0 |
30140036 2164002 583449 621753 20 20 |
30200000 100000 43000 45160 3 6 |
30300000 100000 43000 45160 3 6 |
30400000 100000 43000 45160 3 6 |
30500000 100000 43000 45160 3 6 |
30600000 100000 43000 45160 3 6 |
30700000 100000 43000 45160 3 6 |
30800000 100000 43000 45160 3 6 |
30900000 100000 43000 45160 3 6 |
31000000 3000000 1290000 1375655 80 90 |
31000000 100000 43000 45146 3 6 |
31100000 100000 43000 45146 3 6 |
31200000 100000 43000 45146 3 6 |
31300000 100000 43000 45146 3 6 |
31400000 100000 43000 45146 3 6 |
31500000 100000 43000 45146 3 6 |
31600000 100000 43000 45146 3 6 |
31700000 100000 43000 45146 3 6 |
31800000 100000 43000 45146 3 6 |
31900000 100000 43000 45146 3 6 |
32000000 100000 43000 45146 3 6 |
32100000 100000 43000 45146 3 6 |
32200000 100000 43000 45146 3 6 |
32300000 100000 43000 45146 3 6 |
32400000 100000 43000 45146 3 6 |
32404038 1406002 1078611 1150106 82 76 |
32500000 100000 43000 45147 3 6 |
32600000 100000 43000 45147 3 6 |
32700000 100000 43000 45147 3 6 |
32800000 100000 43000 45147 3 6 |
32900000 100000 43000 45147 3 6 |
33000000 100000 43000 45147 3 6 |
33100000 100000 43000 45147 3 6 |
33200000 100000 43000 45147 3 6 |
33300000 100000 43000 45147 3 6 |
33400000 100000 43000 45147 3 6 |
33500000 100000 43000 45147 3 6 |
33600000 100000 43000 45147 3 6 |
33700000 100000 43000 45147 3 6 |
33800000 100000 43000 45147 3 6 |
33900000 100000 43000 45147 3 6 |
33910040 2480002 371141 395283 70 40 |
34000000 3000000 1290000 1375595 80 90 |
34000000 100000 43000 45170 3 6 |
34100000 100000 43000 45170 3 6 |
34200000 100000 43000 45170 3 6 |
34300000 100000 43000 45170 3 6 |
34400000 100000 43000 45170 3 6 |
34500000 100000 43000 45170 3 6 |
34600000 100000 43000 45170 3 6 |
34700000 100000 43000 45170 3 6 |
34800000 100000 43000 45170 3 6 |
34900000 100000 43000 45170 3 6 |
35000000 100000 43000 45170 3 6 |
35100000 100000 43000 45170 3 6 |
35200000 100000 43000 45170 3 6 |
35300000 100000 43000 45170 3 6 |
35400000 100000 43000 45170 3 6 |
35500000 100000 43000 45170 3 6 |
35600000 100000 43000 45170 3 6 |
35700000 100000 43000 45170 3 6 |
35800000 100000 43000 45170 3 6 |
35900000 100000 43000 45170 3 6 |
36000000 100000 43000 45170 3 6 |
36100000 100000 43000 45170 3 6 |
36200000 100000 43000 45170 3 6 |
36300000 100000 43000 45170 3 6 |
36400000 100000 43000 45170 3 6 |
36490042 2661002 264134 281112 3 95 |
36500000 100000 43000 45166 3 6 |
36600000 100000 43000 45166 3 6 |
36700000 100000 43000 45166 3 6 |
36800000 100000 43000 45166 3 6 |
36900000 100000 43000 45166 3 6 |
37000000 3000000 1290000 1375620 80 90 |
37000000 100000 43000 45146 3 6 |
37100000 100000 43000 45146 3 6 |
37200000 100000 43000 45146 3 6 |
37300000 100000 43000 45146 3 6 |
37400000 100000 43000 45146 3 6 |
37500000 100000 43000 45146 3 6 |
37600000 100000 43000 45146 3 6 |
37700000 100000 43000 45146 3 6 |
37800000 100000 43000 45146 3 6 |
37900000 100000 43000 45146 3 6 |
38000000 100000 43000 45146 3 6 |
38100000 100000 43000 45146 3 6 |
38200000 100000 43000 45146 3 6 |
38300000 100000 43000 45146 3 6 |
38400000 100000 43000 45146 3 6 |
38500000 100000 43000 45146 3 6 |
38600000 100000 43000 45146 3 6 |
38700000 100000 43000 45146 3 6 |
38800000 100000 43000 45146 3 6 |
38900000 100000 43000 45146 3 6 |
39000000 100000 43000 45146 3 6 |
39100000 100000 43000 45146 3 6 |
39200000 100000 43000 45146 3 6 |
39251044 545002 504056 537082 20 31 |
39300000 100000 43000 45144 3 6 |
39400000 100000 43000 45144 3 6 |
39500000 100000 43000 45144 3 6 |
39600000 100000 43000 45144 3 6 |
39700000 100000 43000 45144 3 6 |
39800000 100000 43000 45144 3 6 |
39896046 564002 376511 401022 98 80 |
39896046 817002 150939 160339 78 43 |
39896046 353002 99123 105013 73 15 |
39896046 2506002 714365 761476 99 84 |
39900000 100000 43000 45149 3 6 |
40000000 3000000 1290000 1375660 80 90 |
40000000 100000 43000 45147 3 6 |
40100000 100000 43000 45147 3 6 |
40200000 100000 43000 45147 3 6 |
40300000 100000 43000 45147 3 6 |
40400000 100000 43000 45147 3 6 |
40500000 100000 43000 45147 3 6 |
40600000 100000 43000 45147 3 6 |
40700000 100000 43000 45147 3 6 |
40800000 100000 43000 45147 3 6 |
40900000 100000 43000 45147 3 6 |
41000000 100000 43000 45147 3 6 |
41100000 100000 43000 45147 3 6 |
41200000 100000 43000 45147 3 6 |
41300000 100000 43000 45147 3 6 |
41400000 100000 43000 45147 3 6 |
41500000 100000 43000 45147 3 6 |
41600000 100000 43000 45147 3 6 |
41700000 100000 43000 45147 3 6 |
41800000 100000 43000 45147 3 6 |
41900000 100000 43000 45147 3 6 |
42000000 100000 43000 45147 3 6 |
42100000 100000 43000 45147 3 6 |
42200000 100000 43000 45147 3 6 |
42300000 100000 43000 45147 3 6 |
42400000 100000 43000 45147 3 6 |
42500000 100000 43000 45147 3 6 |
42502048 130002 71538 75588 72 0 |
42502048 665002 347830 370323 38 52 |
42502048 1046002 3114 2602 68 72 |
42600000 100000 43000 45153 3 6 |
42700000 100000 43000 45153 3 6 |
42800000 100000 43000 45153 3 6 |
42900000 100000 43000 45153 3 6 |
43000000 3000000 1290000 1375609 80 90 |
43000000 100000 43000 45149 3 6 |
43100000 100000 43000 45149 3 6 |
43200000 100000 43000 45149 3 6 |
43300000 100000 43000 45149 3 6 |
43400000 100000 43000 45149 3 6 |
43500000 100000 43000 45149 3 6 |
43600000 100000 43000 45149 3 6 |
43648050 2643002 1225965 1307299 91 53 |
43700000 100000 43000 45165 3 6 |
43800000 100000 43000 45165 3 6 |
43900000 100000 43000 45165 3 6 |
44000000 100000 43000 45165 3 6 |
44100000 100000 43000 45165 3 6 |
44200000 100000 43000 45165 3 6 |
44300000 100000 43000 45165 3 6 |
44400000 100000 43000 45165 3 6 |
44500000 100000 43000 45165 3 6 |
44600000 100000 43000 45165 3 6 |
44700000 100000 43000 45165 3 6 |
44800000 100000 43000 45165 3 6 |
44900000 100000 43000 45165 3 6 |
45000000 100000 43000 45165 3 6 |
45100000 100000 43000 45165 3 6 |
45200000 100000 43000 45165 3 6 |
45300000 100000 43000 45165 3 6 |
45400000 100000 43000 45165 3 6 |
45500000 100000 43000 45165 3 6 |
45600000 100000 43000 45165 3 6 |
45700000 100000 43000 45165 3 6 |
45800000 100000 43000 45165 3 6 |
45900000 100000 43000 45165 3 6 |
46000000 3000000 1290000 1375638 80 90 |
46000000 100000 43000 45149 3 6 |
46100000 100000 43000 45149 3 6 |
46200000 100000 43000 45149 3 6 |
46300000 100000 43000 45149 3 6 |
46391052 17002 13374 13545 80 45 |
46391052 817002 664620 708390 65 14 |
46391052 2519002 497664 530232 47 65 |
46391052 1878002 1004593 1071143 95 42 |
46391052 286002 119700 127014 87 53 |
46400000 100000 43000 45163 3 6 |
46500000 100000 43000 45163 3 6 |
46600000 100000 43000 45163 3 6 |
46700000 100000 43000 45163 3 6 |
46777054 1430002 558646 595345 96 27 |
46777054 510002 266242 283355 49 2 |
46777054 1797002 1135184 1210461 97 22 |
46800000 100000 43000 45145 3 6 |
46900000 100000 43000 45145 3 6 |
47000000 100000 43000 45145 3 6 |
47100000 100000 43000 45145 3 6 |
47200000 100000 43000 45145 3 6 |
47300000 100000 43000 45145 3 6 |
47400000 100000 43000 45145 3 6 |
47500000 100000 43000 45145 3 6 |
47600000 100000 43000 45145 3 6 |
47700000 100000 43000 45145 3 6 |
47800000 100000 43000 45145 3 6 |
47900000 100000 43000 45145 3 6 |
48000000 100000 43000 45145 3 6 |
48100000 100000 43000 45145 3 6 |
48200000 100000 43000 45145 3 6 |
48300000 100000 43000 45145 3 6 |
48400000 100000 43000 45145 3 6 |
48500000 100000 43000 45145 3 6 |
48600000 100000 43000 45145 3 6 |
48674056 463002 194466 206717 24 90 |
48674056 535002 252525 268647 85 11 |
48700000 100000 43000 45167 3 6 |
48800000 100000 43000 45167 3 6 |
48900000 100000 43000 45167 3 6 |
49000000 3000000 1290000 1375586 80 90 |
49000000 100000 43000 45165 3 6 |
49100000 100000 43000 45165 3 6 |
49200000 100000 43000 45165 3 6 |
49300000 100000 43000 45165 3 6 |
49309058 2898002 1890030 2015829 86 82 |
49309058 368002 109137 115699 97 81 |
49400000 100000 43000 45149 3 6 |
49500000 100000 43000 45149 3 6 |
49600000 100000 43000 45149 3 6 |
49700000 100000 43000 45149 3 6 |
49777060 910002 378373 402977 33 11 |
49800000 100000 43000 45149 3 6 |
49900000 100000 43000 45149 3 6 |
50000000 100000 43000 45149 3 6 |
50100000 100000 43000 45149 3 6 |
50200000 100000 43000 45149 3 6 |
50300000 100000 43000 45149 3 6 |
50400000 100000 43000 45149 3 6 |
50500000 100000 43000 45149 3 6 |
50600000 100000 43000 45149 3 6 |
50700000 100000 43000 45149 3 6 |
50787062 860002 173620 184472 61 41 |
50787062 504002 251581 267714 8 69 |
50800000 100000 43000 45149 3 6 |
50900000 100000 43000 45149 3 6 |
51000000 100000 43000 45149 3 6 |
51100000 100000 43000 45149 3 6 |
51200000 100000 43000 45149 3 6 |
51300000 100000 43000 45149 3 6 |
51391064 2968002 292892 311795 48 40 |
51400000 100000 43000 45148 3 6 |
51500000 100000 43000 45148 3 6 |
51600000 100000 43000 45148 3 6 |
51700000 100000 43000 45148 3 6 |
51800000 100000 43000 45148 3 6 |
51900000 100000 43000 45148 3 6 |
52000000 3000000 1290000 1375603 80 90 |
52000000 100000 43000 45166 3 6 |
52100000 100000 43000 45166 3 6 |
52200000 100000 43000 45166 3 6 |
52300000 100000 43000 45166 3 6 |
52400000 100000 43000 45166 3 6 |
52500000 100000 43000 45166 3 6 |
52600000 100000 43000 45166 3 6 |
52700000 100000 43000 45166 3 6 |
52800000 100000 43000 45166 3 6 |
52900000 100000 43000 45166 3 6 |
53000000 100000 43000 45166 3 6 |
53100000 100000 43000 45166 3 6 |
53200000 100000 43000 45166 3 6 |
53300000 100000 43000 45166 3 6 |
53400000 100000 43000 45166 3 6 |
53500000 100000 43000 45166 3 6 |
53600000 100000 43000 45166 3 6 |
53700000 100000 43000 45166 3 6 |
53800000 100000 43000 45166 3 6 |
53900000 100000 43000 45166 3 6 |
54000000 100000 43000 45166 3 6 |
54100000 100000 43000 45166 3 6 |
54200000 100000 43000 45166 3 6 |
54300000 100000 43000 45166 3 6 |
54400000 100000 43000 45166 3 6 |
54459066 2568002 420130 447532 62 49 |
54459066 2182002 1185687 1264350 63 82 |
54459066 1542002 1453522 1550084 3 22 |
54500000 100000 43000 45148 3 6 |
54600000 100000 43000 45148 3 6 |
54700000 100000 43000 45148 3 6 |
54800000 100000 43000 45148 3 6 |
54900000 100000 43000 45148 3 6 |
55000000 3000000 1290000 1375612 80 90 |
55000000 100000 43000 45165 3 6 |
55100000 100000 43000 45165 3 6 |
55200000 100000 43000 45165 3 6 |
55300000 100000 43000 45165 3 6 |
55400000 100000 43000 45165 3 6 |
55500000 100000 43000 45165 3 6 |
55600000 100000 43000 45165 3 6 |
55700000 100000 43000 45165 3 6 |
55800000 100000 43000 45165 3 6 |
55900000 100000 43000 45165 3 6 |
56000000 100000 43000 45165 3 6 |
56100000 100000 43000 45165 3 6 |
56101068 844002 779368 830787 71 91 |
56200000 100000 43000 45161 3 6 |
56300000 100000 43000 45161 3 6 |
56400000 100000 43000 45161 3 6 |
56500000 100000 43000 45161 3 6 |
56600000 100000 43000 45161 3 6 |
56700000 100000 43000 45161 3 6 |
56800000 100000 43000 45161 3 6 |
56900000 100000 43000 45161 3 6 |
57000000 100000 43000 45161 3 6 |
57045070 2107002 1333939 1422502 89 66 |
57100000 100000 43000 45162 3 6 |
57200000 100000 43000 45162 3 6 |
57300000 100000 43000 45162 3 6 |
57400000 100000 43000 45162 3 6 |
57500000 100000 43000 45162 3 6 |
57600000 100000 43000 45162 3 6 |
57700000 100000 43000 45162 3 6 |
57800000 100000 43000 45162 3 6 |
57900000 100000 43000 45162 3 6 |
58000000 3000000 1290000 1375629 80 90 |
58000000 100000 43000 45148 3 6 |
58100000 100000 43000 45148 3 6 |
58200000 100000 43000 45148 3 6 |
58300000 100000 43000 45148 3 6 |
58400000 100000 43000 45148 3 6 |
58500000 100000 43000 45148 3 6 |
58600000 100000 43000 45148 3 6 |
58700000 100000 43000 45148 3 6 |
58800000 100000 43000 45148 3 6 |
58900000 100000 43000 45148 3 6 |
59000000 100000 43000 45148 3 6 |
59100000 100000 43000 45148 3 6 |
59200000 100000 43000 45148 3 6 |
59252072 2696002 989242 1054767 1 49 |
59252072 2656002 770386 821226 79 27 |
59252072 329002 22627 23424 94 23 |
59300000 100000 43000 45167 3 6 |
59400000 100000 43000 45167 3 6 |
59500000 100000 43000 45167 3 6 |
59600000 100000 43000 45167 3 6 |
59681074 1794002 1556982 1660485 4 1 |
59681074 2417002 732124 780422 2 49 |
59681074 806002 252797 269008 48 43 |
59700000 100000 43000 45165 3 6 |
59800000 100000 43000 45165 3 6 |
59900000 100000 43000 45165 3 6 |
60000000 100000 43000 45165 3 6 |
60100000 100000 43000 45165 3 6 |
60200000 100000 43000 45165 3 6 |
60300000 100000 43000 45165 3 6 |
60400000 100000 43000 45165 3 6 |
60500000 100000 43000 45165 3 6 |
60600000 100000 43000 45165 3 6 |
60700000 100000 43000 45165 3 6 |
60800000 100000 43000 45165 3 6 |
60900000 100000 43000 45165 3 6 |
/unsupported/trunk/crunch/load/go.bat |
---|
0,0 → 1,0 |
x ..\crunch\rrvalue crunch.dat |
/unsupported/trunk/crunch/load/makefile |
---|
0,0 → 1,43 |
# |
# |
# |
ifndef BASE |
BASE=../.. |
endif |
include $(BASE)/config/config.mk |
PROGS = step1 step1b step2 step2b step3 step4 |
include $(BASE)/config/example.mk |
step1: step1.c |
gcc step1.c -o step1 |
step1b: step1b.c |
gcc step1b.c -o step1b |
runstep1: step1 length.dat |
step1 < length.dat > shape.dat |
runstep1b: step1b length.dat |
step1b < length.dat > shape.dat |
step2: |
make -f $(SUBMAKE) APP=step2 INIT= OTHEROBJS="tune.o" OTHERINCL= |
step2b: |
make -f $(SUBMAKE) APP=step2b INIT= OTHEROBJS="tune.o" OTHERINCL= |
step3: |
make -f $(SUBMAKE) APP=step3 INIT= OTHEROBJS="tune.o" OTHERINCL= |
step4: step4.c |
gcc step4.c -o step4 |
runstep4: step4 hpattern.dat vpattern.dat |
step4 hpattern.dat vpattern.dat > crunch.dat |
clean:: |
rm *.o *.exe |
/unsupported/trunk/crunch/load/step1.c |
---|
0,0 → 1,60 |
/* |
Step 1: Generation of the Shape of the hard periodic load |
--------------------------------------------------------- |
Given the LENGTH.DAT file, we need to produce a random shape for the |
Periodic load. |
The random shape is the limit of bandwith that a certain time can be |
available for creating hard tasks. Hard task creation is disabled |
if the currently used bandwidth is higher than the limit. |
The random shape is contained into the SHAPE.DAT file. The file contains |
a sequence of numbers in the form: <time> <b>, |
where <time> is the time in seconds to wich refers the threshold, |
and <b> is the maximum bandwidth that can be used after <time>. |
The data is ordered by time. |
*/ |
#include <stdio.h> |
#include <stdlib.h> |
#define MAX_BANDWIDTH 0xFFFFFFFF |
int x; |
int x_total[1000], x_B[1000]; |
int main() |
{ |
unsigned length; |
unsigned i; |
unsigned total; |
scanf("%d",&length); |
srand(time(0)); |
total = 0; |
x=0; |
while (total < length) { |
i = rand()%90; // percentage of use |
x_total[x] = total; |
x_B[x] = (MAX_BANDWIDTH/100)*i; |
fprintf(stderr,"x=%6d B=%d\n", x_total[x], i); |
x++; |
total += rand()%30+5; |
} |
printf("%d\n",x+1); |
for (i=0; i<x; i++) { |
printf("%u %u\n",x_total[i], x_B[i]); |
} |
printf("%u 0\n",length); |
return 0; |
} |
/unsupported/trunk/crunch/load/step2.c |
---|
0,0 → 1,455 |
/* |
* Project: S.Ha.R.K. |
* |
* Coordinators: |
* Giorgio Buttazzo <giorgio@sssup.it> |
* Paolo Gai <pj@gandalf.sssup.it> |
* |
* Authors : |
* Paolo Gai <pj@gandalf.sssup.it> |
* (see the web pages for full authors list) |
* |
* ReTiS Lab (Scuola Superiore S.Anna - Pisa - Italy) |
* |
* http://www.sssup.it |
* http://retis.sssup.it |
* http://shark.sssup.it |
*/ |
/** |
------------ |
CVS : $Id: step2.c,v 1.1 2004-07-05 14:17:15 pj Exp $ |
File: $File$ |
Revision: $Revision: 1.1 $ |
Last update: $Date: 2004-07-05 14:17:15 $ |
------------ |
**/ |
/* |
* Copyright (C) 2000 Paolo Gai |
* |
* This program is free software; you can redistribute it and/or modify |
* it under the terms of the GNU General Public License as published by |
* the Free Software Foundation; either version 2 of the License, or |
* (at your option) any later version. |
* |
* This program is distributed in the hope that it will be useful, |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with this program; if not, write to the Free Software |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* |
*/ |
#include "kernel/kern.h" |
#include "string.h" |
#include "ll/i386/x-dos.h" |
#include "modules/rr.h" |
#include "modules/dummy.h" |
#include "modules/edf.h" |
#include "modules/sem.h" |
#include "modules/hartport.h" |
#include "drivers/keyb.h" |
#include "ctype.h" |
#include "tune.h" |
int ending=0; |
// Patterns |
#define MAX_PATTERN 10000 |
int max_pattern = 0; |
TIME pattern_t[MAX_PATTERN]; |
TIME pattern_period[MAX_PATTERN]; |
TIME pattern_wcet[MAX_PATTERN]; |
TIME pattern_iter[MAX_PATTERN]; |
void record_pattern(TIME t, TIME period, TIME wcet) |
{ |
pattern_t[max_pattern] = t; |
pattern_period[max_pattern] = period; |
pattern_wcet[max_pattern] = wcet; |
max_pattern++; |
} |
#define WCET_SLACK 500 |
void tune_pattern(void) |
{ |
int i,w; |
for (i=0; i<max_pattern; i++) { |
w = (pattern_wcet[i]*80)/100-WCET_SLACK; |
// if (w>pattern_wcet[i]-WCET_SLACK) w=pattern_wcet[i]-WCET_SLACK; |
pattern_iter[i] = tune_CPU_speed(w); |
} |
} |
// Shape modification |
#define DEFAULT_SHIFT 1000000 |
#define MAX_SHAPE 1000 |
bandwidth_t shape=0; // current shape threshold |
int current_shape = 0; |
bandwidth_t shape_B[MAX_SHAPE]; |
TIME shape_T[MAX_SHAPE]; |
int max_shape; |
void shape_event(void *arg) |
{ |
struct timespec t; |
shape = shape_B[current_shape]; |
current_shape++; |
if (current_shape == max_shape) |
ending = 1; |
NULL_TIMESPEC(&t); |
ADDUSEC2TIMESPEC((shape_T[current_shape]*1000000+DEFAULT_SHIFT),&t); |
// cprintf("At Time=%10ld.%10ld T=%10d Shape=%10d\n",t.tv_sec,t.tv_nsec, |
// shape_T[current_shape],shape_B[current_shape]); |
kern_event_post(&t,shape_event,NULL); |
} |
void start_shape(void) |
{ |
struct timespec t; |
NULL_TIMESPEC(&t); |
ADDUSEC2TIMESPEC(DEFAULT_SHIFT,&t); |
kern_cli(); |
kern_event_post(&t,shape_event,NULL); |
kern_sti(); |
} |
// Hard task |
#define ASTER_LIM 80 |
void *hard_task(void *arg) |
{ |
int j, x, y; |
char s[2]; |
x = 0; |
y = rand() % 6 + 3; |
s[0] = '*'; s[1] = 0; |
while (x < ASTER_LIM) { |
for (j=0; j<50; j++) { |
s[0] = '*' + rand() % 100; |
puts_xy(x,y,rand()%15+1,s); |
} |
task_endcycle(); |
puts_xy(x,y,WHITE," "); |
x++; |
} |
return (void *)0; |
} |
#define MAX_PERIOD 100 |
// Load creation |
void *create_load(void *arg) |
{ |
PID p; |
HARD_TASK_MODEL m; |
TIME period = 0; |
TIME wcet = 0; |
int x; // adaptive bandwidth... |
int counter=0; |
char buf[100]; |
hard_task_default_model(m); |
x = MAX_PERIOD/3; |
place(0,11); |
// waiting for the start time :-) |
while (sys_gettime(NULL)<DEFAULT_SHIFT); |
while (1) { |
sprintf(buf,"Shape: %5.3f Band: %5.3f period: %10ld wcet: %10ld Time: %d", |
(double)shape/(double)MAX_BANDWIDTH, |
(double)EDF_usedbandwidth(0)/(double)MAX_BANDWIDTH, |
period, wcet, sys_gettime(NULL)/1000000); |
puts_xy(0,10,WHITE,buf); |
period = (x+rand() % (MAX_PERIOD-x+1))*1000; |
wcet = rand()%1000 * (period/1500); |
if ((MAX_BANDWIDTH/period)*wcet > shape - EDF_usedbandwidth(0)) |
wcet = (shape - EDF_usedbandwidth(0))/period; |
if (wcet < period/40) wcet=period/40; |
if (wcet < 500) wcet=500; |
if (EDF_usedbandwidth(0) + (MAX_BANDWIDTH/period)*wcet < shape) { |
hard_task_def_mit(m, period); |
hard_task_def_wcet(m, wcet); |
p = task_create("hard_task",hard_task,&m,NULL); |
if (p == -1) { |
x += rand()%10-4; |
} |
else { |
record_pattern(sys_gettime(NULL),period,wcet); |
cprintf("%d ",++counter); |
task_activate(p); |
x *= 3; |
x /= 4; |
} |
if (x<MAX_PERIOD/3) x = MAX_PERIOD/3; |
if (x > MAX_PERIOD) x = MAX_PERIOD; |
} |
if (ending) return (void *)0; |
} |
} |
// Read/Write part |
#define FILEBUF_DIM 10000 |
/* This is the buffer used by read_myfile */ |
char myfilebuf[FILEBUF_DIM]; |
/* This is the number of bytes read by read_myfile */ |
int myfilebuf_length; |
/* the buffer b is scannedc to search for numbers |
at the first non-number the function stops */ |
int geti(char *b, int *pos, int maxpos) |
{ |
int res = 0; |
// skip first chars |
while (!isdigit(b[*pos])) { |
(*pos)++; |
if (*pos == maxpos) return -1; // Error!!! |
} |
// read the numbers |
do { |
res = (res * 10) + b[*pos] - '0'; |
(*pos)++; |
} while (isdigit(b[*pos])); |
return res; |
} |
void parse_shape(void) |
{ |
int curr_filepos = 0; |
int i = 0; |
// read the number of tasks into the data file |
max_shape = geti(myfilebuf, &curr_filepos, myfilebuf_length); |
if (max_shape == -1) { |
cprintf("Error parsing shape.dat file...\n"); |
sys_end(); |
} |
for (i=0; i<max_shape; i++) { |
// read the seven datas |
shape_T[i] = geti(myfilebuf, &curr_filepos, myfilebuf_length); |
shape_B[i] = geti(myfilebuf, &curr_filepos, myfilebuf_length); |
// check the last one for an error |
if (shape_B[i] == -1) { |
cprintf("Error parsing shape %d...\n",i); |
sys_end(); |
} |
} |
} |
void read_shapes(void) |
{ |
char name[]="shape.dat"; |
/* DOS file descriptor */ |
DOS_FILE *f; |
/* Error code */ |
int err; |
/* open the DOS file for reading (you can specify only "r" or "w") */ |
f = DOS_fopen(name,"r"); |
/* check for open errors */ |
if (!f) { |
/* error!! */ |
err = DOS_error(); |
/* note that if you call DOS_error() here, it return 0!!! */ |
cprintf("Error %d opening %s...\n", err, name); |
myfilebuf_length = 0; |
return; |
} |
/* read up to 1000 chars */ |
myfilebuf_length = DOS_fread(&myfilebuf,1,FILEBUF_DIM,f); |
/* check for errors */ |
err = DOS_error(); |
cprintf("Read %d bytes from %s...\n", myfilebuf_length, name); |
if (err) { |
cprintf("Error %d reading %s...\n", err, name); |
myfilebuf_length = 0; |
/* there is not return because I want to close the file! */ |
} |
/* Close the file */ |
DOS_fclose(f); |
} |
/* This function write myfile.out (up to 30 chars) */ |
void write_hpattern(void *arg) |
{ |
DOS_FILE *f; /* DOS file descriptor */ |
int err=0; /* Error code */ |
int writtenbytes = 0; /* number of files written */ |
char buf[100]; |
int i; |
/* open the DOS file for writing (you can specify only "r" or "w") */ |
f = DOS_fopen("hpattern.dat","w"); |
/* check for open errors */ |
if (!f) { |
/* error!! */ |
err = DOS_error(); |
/* note that if you call DOS_error() here, it return 0!!! */ |
cprintf("Error %d opening hpattern.dat...\n", err); |
return; |
} |
sprintf(buf,"%d\r\n",max_pattern); |
writtenbytes += DOS_fwrite(buf,1,strlen(buf),f); |
for (i=0; i<max_pattern; i++) { |
sprintf(buf,"%ld %ld %ld %ld\r\n", pattern_t[i], pattern_period[i], |
pattern_wcet[i], pattern_iter[i]); |
writtenbytes += DOS_fwrite(buf,1,strlen(buf),f); |
/* check for errors */ |
err = DOS_error(); |
if (err) break; |
} |
cprintf("Written %d bytes into hpattern.dat...\n", writtenbytes); |
if (err) { |
cprintf("Error %d writing hpattern.dat...\n", err); |
/* there is not return because I want to close the file! */ |
} |
/* Close the file */ |
DOS_fclose(f); |
} |
/*+ sysyem tick in us +*/ |
#define TICK 0 |
/*+ RR tick in us +*/ |
#define RRTICK 10000 |
void read_myfile(void); |
TIME __kernel_register_levels__(void *arg) |
{ |
struct multiboot_info *mb = (struct multiboot_info *)arg; |
EDF_register_level(EDF_ENABLE_ALL); |
RR_register_level(RRTICK, RR_MAIN_NO, mb); |
RR_register_level(RRTICK, RR_MAIN_YES, mb); |
dummy_register_level(); |
SEM_register_module(); |
read_shapes(); |
return TICK; |
} |
NRT_TASK_MODEL keyb_model; |
TASK __init__(void *arg) |
{ |
NRT_TASK_MODEL nrt; |
KEYB_PARMS kparms = BASE_KEYB; |
HARTPORT_init(); |
nrt_task_default_model(keyb_model); |
nrt_task_def_system(keyb_model); |
nrt_task_def_nokill(keyb_model); |
keyb_def_task(kparms,(TASK_MODEL *)&keyb_model); |
KEYB_init(&kparms); |
set_exchandler_grx(); |
nrt_task_default_model(nrt); |
srand(sys_gettime(NULL)); |
clear(); |
sys_atrunlevel(write_hpattern, NULL, RUNLEVEL_AFTER_EXIT); |
parse_shape(); |
start_shape(); |
task_activate(task_create("create_load",create_load,&nrt,NULL)); |
cputs("\nWaiting the end of the periodic tasks...\n"); |
while (task_counter != 1); |
// the task create_load preempt __init__ until all is finished! |
tune_pattern(); |
return (void *)0; |
} |
// never called!!! |
int main() |
{ |
return 0; |
} |