List of all items
Structs
- DEV_NON_BLOCKING_ACCESS
- console::Stdout
- drivers::block::BLOCK_DEVICE
- drivers::block::virtio_blk::VirtIOBlock
- drivers::bus::virtio::QUEUE_FRAMES
- drivers::bus::virtio::VirtioHal
- drivers::chardev::UART
- drivers::chardev::ns16550a::IER
- drivers::chardev::ns16550a::LSR
- drivers::chardev::ns16550a::MCR
- drivers::chardev::ns16550a::NS16550a
- drivers::chardev::ns16550a::NS16550aInner
- drivers::chardev::ns16550a::NS16550aRaw
- drivers::chardev::ns16550a::ReadWithoutDLAB
- drivers::chardev::ns16550a::WriteWithoutDLAB
- drivers::gpu::GPU_DEVICE
- drivers::gpu::VirtIOGpuWrapper
- drivers::input::KEYBOARD_DEVICE
- drivers::input::MOUSE_DEVICE
- drivers::input::VirtIOInputInner
- drivers::input::VirtIOInputWrapper
- drivers::net::NET_DEVICE
- drivers::net::VirtIONetWrapper
- drivers::plic::PLIC
- fs::inode::OSInode
- fs::inode::OSInodeInner
- fs::inode::OpenFlags
- fs::inode::ROOT_INODE
- fs::pipe::Pipe
- fs::pipe::PipeRingBuffer
- fs::stdio::Stdin
- fs::stdio::Stdout
- mm::address::PhysAddr
- mm::address::PhysPageNum
- mm::address::SimpleRange
- mm::address::SimpleRangeIterator
- mm::address::VirtAddr
- mm::address::VirtPageNum
- mm::frame_allocator::FRAME_ALLOCATOR
- mm::frame_allocator::FrameTracker
- mm::frame_allocator::StackFrameAllocator
- mm::memory_set::KERNEL_SPACE
- mm::memory_set::MapArea
- mm::memory_set::MapPermission
- mm::memory_set::MemorySet
- mm::page_table::PTEFlags
- mm::page_table::PageTable
- mm::page_table::PageTableEntry
- mm::page_table::UserBuffer
- mm::page_table::UserBufferIterator
- net::IPv4
- net::LOSE_NET_STACK
- net::NetStack
- net::port_table::LISTEN_TABLE
- net::port_table::Port
- net::port_table::PortFd
- net::socket::SOCKET_TABLE
- net::socket::Socket
- net::tcp::TCP
- net::udp::UDP
- sync::condvar::Condvar
- sync::condvar::CondvarInner
- sync::mutex::MutexBlocking
- sync::mutex::MutexBlockingInner
- sync::mutex::MutexSpin
- sync::semaphore::Semaphore
- sync::semaphore::SemaphoreInner
- sync::up::INTR_MASKING_INFO
- sync::up::IntrMaskingInfo
- sync::up::UPIntrFreeCell
- sync::up::UPIntrRefMut
- sync::up::UPSafeCellRaw
- task::INITPROC
- task::context::TaskContext
- task::id::KSTACK_ALLOCATOR
- task::id::KernelStack
- task::id::PID_ALLOCATOR
- task::id::PidHandle
- task::id::RecycleAllocator
- task::id::TaskUserRes
- task::manager::PID2PCB
- task::manager::TASK_MANAGER
- task::manager::TaskManager
- task::process::ProcessControlBlock
- task::process::ProcessControlBlockInner
- task::processor::PROCESSOR
- task::processor::Processor
- task::signal::SignalFlags
- task::task::TaskControlBlock
- task::task::TaskControlBlockInner
- timer::TIMERS
- timer::TimerCondVar
- trap::context::TrapContext
Enums
- drivers::plic::IntrTargetPriority
- fs::pipe::RingBufferStatus
- mm::memory_set::MapType
- task::task::TaskStatus
Traits
- drivers::chardev::CharDevice
- drivers::gpu::GpuDevice
- drivers::input::InputDevice
- drivers::net::NetDevice
- fs::File
- mm::address::StepByOne
- mm::frame_allocator::FrameAllocator
- sync::mutex::Mutex
Macros
Functions
- board::device_init
- board::irq_handler
- clear_bss
- console::print
- drivers::block::block_device_test
- fs::inode::list_apps
- fs::inode::open_file
- fs::pipe::make_pipe
- lang_items::backtrace
- lang_items::panic
- mm::frame_allocator::frame_alloc
- mm::frame_allocator::frame_alloc_more
- mm::frame_allocator::frame_allocator_alloc_more_test
- mm::frame_allocator::frame_allocator_test
- mm::frame_allocator::frame_dealloc
- mm::frame_allocator::init_frame_allocator
- mm::heap_allocator::handle_alloc_error
- mm::heap_allocator::heap_test
- mm::heap_allocator::init_heap
- mm::init
- mm::memory_set::ebss
- mm::memory_set::edata
- mm::memory_set::ekernel
- mm::memory_set::erodata
- mm::memory_set::etext
- mm::memory_set::kernel_token
- mm::memory_set::remap_test
- mm::memory_set::sbss_with_stack
- mm::memory_set::sdata
- mm::memory_set::srodata
- mm::memory_set::stext
- mm::memory_set::strampoline
- mm::page_table::translated_byte_buffer
- mm::page_table::translated_ref
- mm::page_table::translated_refmut
- mm::page_table::translated_str
- net::hexdump
- net::net_interrupt_handler
- net::port_table::accept
- net::port_table::accept_connection
- net::port_table::check_accept
- net::port_table::listen
- net::port_table::port_acceptable
- net::socket::add_socket
- net::socket::get_s_a_by_index
- net::socket::get_socket
- net::socket::pop_data
- net::socket::push_data
- net::socket::remove_socket
- net::socket::set_s_a_by_index
- rust_main
- sbi::set_timer
- sbi::shutdown
- syscall::fs::sys_close
- syscall::fs::sys_dup
- syscall::fs::sys_open
- syscall::fs::sys_pipe
- syscall::fs::sys_read
- syscall::fs::sys_write
- syscall::gui::sys_framebuffer
- syscall::gui::sys_framebuffer_flush
- syscall::input::sys_event_get
- syscall::input::sys_key_pressed
- syscall::net::sys_accept
- syscall::net::sys_connect
- syscall::net::sys_listen
- syscall::process::sys_exec
- syscall::process::sys_exit
- syscall::process::sys_fork
- syscall::process::sys_get_time
- syscall::process::sys_getpid
- syscall::process::sys_kill
- syscall::process::sys_waitpid
- syscall::process::sys_yield
- syscall::sync::sys_condvar_create
- syscall::sync::sys_condvar_signal
- syscall::sync::sys_condvar_wait
- syscall::sync::sys_mutex_create
- syscall::sync::sys_mutex_lock
- syscall::sync::sys_mutex_unlock
- syscall::sync::sys_semaphore_create
- syscall::sync::sys_semaphore_down
- syscall::sync::sys_semaphore_up
- syscall::sync::sys_sleep
- syscall::syscall
- syscall::thread::sys_gettid
- syscall::thread::sys_thread_create
- syscall::thread::sys_waittid
- task::add_initproc
- task::block_current_and_run_next
- task::block_current_task
- task::check_signals_of_current
- task::current_add_signal
- task::exit_current_and_run_next
- task::id::kernel_stack_position
- task::id::kstack_alloc
- task::id::pid_alloc
- task::id::trap_cx_bottom_from_tid
- task::id::ustack_bottom_from_tid
- task::manager::add_task
- task::manager::fetch_task
- task::manager::insert_into_pid2process
- task::manager::pid2process
- task::manager::remove_from_pid2process
- task::manager::wakeup_task
- task::processor::current_kstack_top
- task::processor::current_process
- task::processor::current_task
- task::processor::current_trap_cx
- task::processor::current_trap_cx_user_va
- task::processor::current_user_token
- task::processor::run_tasks
- task::processor::schedule
- task::processor::take_current_task
- task::suspend_current_and_run_next
- task::switch::__switch
- timer::add_timer
- timer::check_timer
- timer::get_time
- timer::get_time_ms
- timer::set_next_trigger
- trap::disable_supervisor_interrupt
- trap::enable_supervisor_interrupt
- trap::enable_timer_interrupt
- trap::init
- trap::set_kernel_trap_entry
- trap::set_user_trap_entry
- trap::trap_from_kernel
- trap::trap_handler
- trap::trap_return
Type Aliases
- board::BlockDeviceImpl
- board::CharDeviceImpl
- mm::address::VPNRange
- mm::frame_allocator::FrameAllocatorImpl
Statics
Constants
- board::CLOCK_FREQ
- board::MEMORY_END
- board::MMIO
- board::VIRTGPU_XRES
- board::VIRTGPU_YRES
- board::VIRT_PLIC
- board::VIRT_UART
- config::KERNEL_HEAP_SIZE
- config::KERNEL_STACK_SIZE
- config::PAGE_SIZE
- config::PAGE_SIZE_BITS
- config::TRAMPOLINE
- config::TRAP_CONTEXT_BASE
- config::USER_STACK_SIZE
- drivers::block::virtio_blk::VIRTIO0
- drivers::gpu::VIRTIO7
- drivers::input::VIRTIO5
- drivers::input::VIRTIO6
- drivers::net::VIRTIO8
- fs::pipe::RING_BUFFER_SIZE
- mm::address::PA_WIDTH_SV39
- mm::address::PPN_WIDTH_SV39
- mm::address::VA_WIDTH_SV39
- mm::address::VPN_WIDTH_SV39
- syscall::SYSCALL_ACCEPT
- syscall::SYSCALL_CLOSE
- syscall::SYSCALL_CONDVAR_CREATE
- syscall::SYSCALL_CONDVAR_SIGNAL
- syscall::SYSCALL_CONDVAR_WAIT
- syscall::SYSCALL_CONNECT
- syscall::SYSCALL_DUP
- syscall::SYSCALL_EVENT_GET
- syscall::SYSCALL_EXEC
- syscall::SYSCALL_EXIT
- syscall::SYSCALL_FORK
- syscall::SYSCALL_FRAMEBUFFER
- syscall::SYSCALL_FRAMEBUFFER_FLUSH
- syscall::SYSCALL_GETPID
- syscall::SYSCALL_GETTID
- syscall::SYSCALL_GET_TIME
- syscall::SYSCALL_KEY_PRESSED
- syscall::SYSCALL_KILL
- syscall::SYSCALL_LISTEN
- syscall::SYSCALL_MUTEX_CREATE
- syscall::SYSCALL_MUTEX_LOCK
- syscall::SYSCALL_MUTEX_UNLOCK
- syscall::SYSCALL_OPEN
- syscall::SYSCALL_PIPE
- syscall::SYSCALL_READ
- syscall::SYSCALL_SEMAPHORE_CREATE
- syscall::SYSCALL_SEMAPHORE_DOWN
- syscall::SYSCALL_SEMAPHORE_UP
- syscall::SYSCALL_SLEEP
- syscall::SYSCALL_THREAD_CREATE
- syscall::SYSCALL_WAITPID
- syscall::SYSCALL_WAITTID
- syscall::SYSCALL_WRITE
- syscall::SYSCALL_YIELD
- syscall::gui::FB_VADDR
- task::id::IDLE_PID
- timer::MSEC_PER_SEC
- timer::TICKS_PER_SEC