]> rtime.felk.cvut.cz Git - frescor/frsh.git/blobdiff - fres/contract/fres_blocks.idl
Fixes of AQuoSA resource manager and build system.
[frescor/frsh.git] / fres / contract / fres_blocks.idl
index b15f0cf6e83e01f9ae2d24cf9da172fe3b4c9da5..52ecd9cdf7e0ac8baed9ece544ad0023f647befe 100644 (file)
@@ -98,39 +98,12 @@ enum frsh_granularity_t {
 typedef long frsh_signal_t;
 typedef long frsh_signal_info_t;
 
-typedef struct frsh_memory_area_data {
-       long size;
-       long area;
-} frsh_memory_area_data_t;
-
-typedef struct frsh_memory_areas {
-    long size;
-    frsh_memory_area_data_t memory_areas[255];
-    // FIXME: It will be better to use sequence<frsh_memory_area_data_t> memory_areas;
-} frsh_memory_areas_t;
-
-typedef struct frsh_csect {
-       // FIXME: Are all these fields needed for negotioation? I
-       // guess that at least areas and storage are not. A possible
-       // solution would be to add a new block
-       // (e.g. frsh_csect_runtime) which will not be sent for
-       // negotiation and will only be used localy by the
-       // application. This would require some changes in
-       // frsh_contract_negotiate(). Note that this is the same
-       // problem as with signals in timing_reqs.
+typedef struct frsh_csect_runtime {
        long op_kind;
-       long obj_handle;
+       char obj_label[65];
        fosa_rel_time_t wcet;
        fosa_rel_time_t blocking;
-       long op;
-       frsh_memory_areas_t areas;
-       frsh_memory_areas_t storage;
-} frsh_csect_t;
-
-typedef struct frsh_csects_group {
-       long size;
-       frsh_csect_t csects[255];
-} frsh_csects_group_t;
+} frsh_csect_runtime_t;
 
 module fres {
        native container_ptr;
@@ -173,8 +146,8 @@ module fres {
 
                /// Critical sections (for shared objects)
                struct csects {
-                       frsh_csects_group_t     sections;
-                       // FIXME: Use "sequence<frsh_csect_t>  sections;" or something similar.
+                       //frsh_csect_runtime_t  sections;
+                       sequence<frsh_csect_runtime>    sections;
                };
 
                /// Spare capacity