33
44#include <stdlib.h>
55
6- enum user_command {
7- MALLOC , // Data => Size
8- FREE , // Data => Address
9- WRITE , // Data => Address; Data size; Data
10- READ , // Data => Address; Data size
11- DUMP , // Data => Address
12- SNAP ,
13- DNET ,
14- KILL , // Data => id
15- REVIVE , // Data => id
16- NONE
17- };
6+ #include "message.h"
7+
8+ // OP_MALLOC , // Data => Size
9+ // OP_FREE , // Data => Address
10+ // OP_WRITE , // Data => Address; Data size; Data
11+ // OP_READ , // Data => Address; Data size
12+ // OP_DUMP, // Data => Address
13+ // OP_SNAP ,
14+ // OP_DNET,
15+ // OP_KILL , // Data => id
16+ // OP_REVIVE, // Data => id
17+ // OP_NONE
1818
1919struct command_queue {
20- enum user_command command ;
20+ enum operation command ;
2121 struct command_queue * next ;
2222 void * data ; // Contain the structure depending of the command
2323};
2424
25+
26+ struct command_queue * generate_command_queue (enum operation op , void * data );
27+
2528// Delete first command queue, return head
2629struct command_queue * pop_command (struct command_queue * head );
2730
@@ -32,7 +35,15 @@ struct command_queue *push_command(struct command_queue *head, struct command_qu
3235void * peek_command (struct command_queue * head );
3336
3437// Get user command enum of the first of the queue
35- enum user_command peek_user_command (struct command_queue * head );
38+ enum operation peek_user_command (struct command_queue * head );
39+
40+ struct data_write * generate_data_write (size_t address , size_t size , void * data );
41+
42+ struct data_read * generate_data_read (size_t address , size_t size );
43+
44+ struct data_size * generate_data_size (size_t size );
45+
46+ struct data_id * generate_data_id (unsigned short id );
3647
3748struct data_write {
3849 size_t address ;
0 commit comments