#avionics #arinc #aerospace #no-std #xng

no-std a653rs-xng

a653rs partition library for xng hypervisor

1 unstable release

0.1.0 Jun 19, 2024

#769 in Embedded development

Download history 57/week @ 2024-10-19 1/week @ 2024-10-26 46/week @ 2024-11-02 105/week @ 2024-11-09 27/week @ 2024-11-16 3/week @ 2024-11-23 7/week @ 2024-12-07 6/week @ 2024-12-14 34/week @ 2025-01-04 49/week @ 2025-01-11 11/week @ 2025-01-18 1/week @ 2025-02-01

79 downloads per month

MIT/Apache

74KB
2K SLoC

Generating the ABI Bindings

To generate them, we used the following command:

bindgen --use-core \
        --allowlist-function '[A-Z][A-Z_]+' \
        --allowlist-type '[A-Z][A-Z_]+' \
        --allowlist-var '[A-Z][A-Z_]+' \
        --blocklist-type '_.*' \
        --ctypes-prefix cty wrapper.h

with the following wrapper.h:

#include <apex_blackboard.h>
#include <apex_buffer.h>
#include <apex_error.h>
#include <apex_event.h>
#include <apex_irq_event_np.h>
#include <apex_multiple_schedules.h>
#include <apex_partition.h>
#include <apex_partition_np.h>
#include <apex_process.h>
#include <apex_queuing.h>
#include <apex_sampling.h>
#include <apex_semaphore.h>
#include <apex_system_np.h>
#include <apex_time.h>
#include <apex_types.h>

lib.rs:

Bindings to a XNG MonoCore implementation of the ARINC653 P1/P2/P4 API

Dependencies

~0.5–1.1MB
~25K SLoC