5 pgalloc
dalmurii edited this page 2026-07-19 09:29:08 +00:00

page allocation.
this section is to mark standard api so developers would implement it easier.

ae2fsys_pgalloc_prot_t

flag for protection of allocation.

typedef /* implementation-defined */ ae2fsys_pgalloc_prot_t;

AE2FSYS_PGALLOC_PROT_READ

memory could be read

#define AE2FSYS_PGALLOC_PROT_READ /* implementation-defined */

AE2FSYS_PGALLOC_PROT_WRITE

memory could be written

#define AE2FSYS_PGALLOC_PROT_WRITE /* implementation-defined */

AE2FSYS_PGALLOC_PROT_EXEC

memory could be executed

#define AE2FSYS_PGALLOC_PROT_EXEC /* implementation-defined */

ae2fsys_pgalloc_flag_t

Flag for attribute of allocation.

typedef /* implementation-defined */ ae2fsys_pgalloc_flag_t;

AE2FSYS_PGALLOC_FLAG_EASY

#define AE2FSYS_PGALLOC_FLAG_EASY /* implementation-defined */

AE2FSYS_PGALLOC_FAILED

An address value returned when ae2fsys_pgalloc has failed.

#define AE2FSYS_PGALLOC_FAILED /* implementation-defined */

AE2FSYS_PGALLOC_

enum AE2FSYS_PGALLOC_ {
        /* implementation-defined */
};

ae2fsys_pgsize

ae2f_MAC((L, )) ae2fsys_pgsize(ae2fsys_pgsz_t& r);

ae2fsys_pgalloc

ae2f_MAC((L, ptr_t, )) ae2fsys_pgalloc(
                ptr_t&          r_ptr,
                ptr_t&&         c_addr_opt,
                ae2fsys_pgsz_t& r_sz_alloc,
                const ae2fsys_pgsz_t c_num_page,
                const ae2fsys_pgalloc_prot_t    c_prot,
                const ae2fsys_pgalloc_flag_t    c_flag
                );

ae2fsys_pgalloc_algnup

ae2f_MAC((L, ptr_t, )) ae2fsys_pgalloc_algnup(
                ptr_t&          r_ptr,
                ptr_t&&         c_addr_opt,
                ae2fsys_pgsz_t& r_sz_alloc,
                const ae2fsys_pgsz_t c_num_bytes,
                const ae2fsys_pgalloc_prot_t    c_prot,
                const ae2fsys_pgalloc_flag_t    c_flag
                );

ae2fsys_pgfree

ae2f_MAC((L, ptr_t, )) ae2fsys_pgfree(
                enum AE2FSYS_PGALLOC_&  r,
                ptr_t                   c_addr,
                const ae2fsys_pgsz_t    c_sz_alloc
                );