# Path: VM/ctypes_types.py

# 
# Path: VM/kernel/kernel.py
# class KernelMeta(type):   
# class Kernel(metaclass=KernelMeta):
#     def register(cls, syscall_number: int):
#         def actually_register(function: Callable[..., int]):
#     def __init__(self, cpu):
#     def __getitem__(self, syscall_number: int):
#     def kernel_read_string(self, address: int) -> bytes:


import os
import logging
    import enum
from io import UnsupportedOperation
from ..ctypes_types import udword, ctypes
from .kernel import Kernel, Int, Uint


logger = logging.getLogger(__name__)


class StructIovec(ctypes.LittleEndianStructure):
    """
    struct iovec
    {
        void * iov_base; / * Starting address * /
        size_t iov_len; / * Number of bytes to transfer * /
    };
    """
    _pack_ = 1
    _fields_ = [
        ('iov_base', udword),

# Path: VM/ctypes_types.py

# 
# Path: VM/kernel/kernel.py
# class KernelMeta(type):   
# class Kernel(metaclass=KernelMeta):
#     def register(cls, syscall_number: int):
#         def actually_register(function: Callable[..., int]):
#     def __init__(self, cpu):
#     def __getitem__(self, syscall_number: int):
#     def kernel_read_string(self, address: int) -> bytes:


# Path: VM/kernel/kernel_filesystem.py
import os
import logging
    import enum
from io import UnsupportedOperation
from ..ctypes_types import udword, ctypes
from .kernel import Kernel, Int, Uint



logger = logging.getLogger(__name__)


class StructIovec(ctypes.LittleEndianStructure):
    """
    struct iovec
    {
        void * iov_base; / * Starting address * /
        size_t iov_len; / * Number of bytes to transfer * /
    };
    """
    _pack_ = 1
    _fields_ = [
        ('iov_base', udword),

        ('iov_len', udword)