MOS Source Code
|
#include "mos/platform/platform.h"
#include <mos/io/io_types.h>
#include <mos/mm/mm_types.h>
#include <mos/types.h>
Go to the source code of this file.
Classes | |
struct | io_op_t |
struct | io_t |
Typedefs | |
typedef struct _io | io_t |
typedef struct _vmap | vmap_t |
Enumerations | |
enum | io_type_t { IO_NULL , IO_FILE , IO_DIR , IO_IPC , IO_PIPE , IO_CONSOLE } |
enum | io_flags_t { IO_NONE = MEM_PERM_NONE , IO_READABLE = MEM_PERM_READ , IO_WRITABLE = MEM_PERM_WRITE , IO_EXECUTABLE = MEM_PERM_EXEC , IO_SEEKABLE = 1 << 3 , IO_MMAPABLE = 1 << 4 } |
Functions | |
void | io_init (io_t *io, io_type_t type, io_flags_t flags, const io_op_t *ops) |
io_t * | io_ref (io_t *io) |
io_t * | io_unref (io_t *io) |
__nodiscard bool | io_valid (const io_t *io) |
size_t | io_read (io_t *io, void *buf, size_t count) |
size_t | io_pread (io_t *io, void *buf, size_t count, off_t offset) |
size_t | io_write (io_t *io, const void *buf, size_t count) |
off_t | io_seek (io_t *io, off_t offset, io_seek_whence_t whence) |
off_t | io_tell (io_t *io) |
bool | io_mmap_perm_check (io_t *io, vm_flags flags, bool is_private) |
bool | io_mmap (io_t *io, vmap_t *vmap, off_t offset) |
bool | io_munmap (io_t *io, vmap_t *vmap, bool *unmapped) |
void | io_get_name (const io_t *io, char *buf, size_t size) |
Variables | |
io_t *const | io_null |
enum io_type_t |
enum io_flags_t |
void io_init | ( | io_t * | io, |
io_type_t | type, | ||
io_flags_t | flags, | ||
const io_op_t * | ops ) |
Definition at line 44 of file io.c.
Referenced by console_register(), ipc_conn_io_create(), ipc_create(), pipeio_create(), and vfs_do_open_dentry().
Definition at line 73 of file io.c.
Referenced by elf_create_process(), elf_fill_process(), elf_map_interpreter(), io_dup(), io_dup2(), io_mmap(), mm_clone_vmap_locked(), process_attach_ref_fd(), process_do_execveat(), process_do_fork(), and vmap_split().
Definition at line 92 of file io.c.
Referenced by elf_create_process(), elf_fill_process(), elf_map_interpreter(), io_munmap(), process_detach_fd(), process_do_execveat(), and process_exit().
__nodiscard bool io_valid | ( | const io_t * | io | ) |
Definition at line 127 of file io.c.
Referenced by process_detach_fd(), process_do_execveat(), process_do_fork(), process_exit(), and vfs_fstatat().
Definition at line 132 of file io.c.
Referenced by io_pread().
Definition at line 151 of file io.c.
Referenced by elf_read_file().
off_t io_seek | ( | io_t * | io, |
off_t | offset, | ||
io_seek_whence_t | whence ) |
Definition at line 199 of file io.c.
Referenced by io_pread(), and io_tell().
Definition at line 218 of file io.c.
Referenced by io_pread().
Definition at line 224 of file io.c.
Referenced by io_mmap(), and vm_protect().
Definition at line 254 of file io.c.
Referenced by mmap_file().
Definition at line 273 of file io.c.
Referenced by vmap_destroy().
Definition at line 307 of file io.c.
Referenced by process_sysfs_vmap_stat(), vsnprintf_do_pointer_kernel(), and x86_dump_stack_at().
|
extern |
Definition at line 42 of file io.c.
Referenced by process_new().