mirror of
https://github.com/rcore-os/rCore-Tutorial-v3.git
synced 2024-11-25 02:46:23 +04:00
1 line
29 KiB
HTML
1 line
29 KiB
HTML
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="List of all items in this crate"><meta name="keywords" content="rust, rustlang, rust-lang"><title>List of all items in this crate</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../normalize.css"><link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../dark.css" disabled><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../storage.js"></script><script defer src="../main.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../favicon.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="sidebar-logo" href="../os/index.html"><div class="logo-container"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></div></a><h2 class="location"></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../os/index.html"><div class="logo-container"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></div></a><h2 class="location">Crate os</h2></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../os/index.html"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></a><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><button type="button">?</button></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../wheel.svg"></a></div></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">List of all items</span></h1><h3 id="Structs">Structs</h3><ul class="structs docblock"><li><a href="struct.DEV_NON_BLOCKING_ACCESS.html">DEV_NON_BLOCKING_ACCESS</a></li><li><a href="console/struct.Stdout.html">console::Stdout</a></li><li><a href="drivers/block/struct.BLOCK_DEVICE.html">drivers::block::BLOCK_DEVICE</a></li><li><a href="drivers/block/virtio_blk/struct.VirtIOBlock.html">drivers::block::virtio_blk::VirtIOBlock</a></li><li><a href="drivers/bus/virtio/struct.QUEUE_FRAMES.html">drivers::bus::virtio::QUEUE_FRAMES</a></li><li><a href="drivers/bus/virtio/struct.VirtioHal.html">drivers::bus::virtio::VirtioHal</a></li><li><a href="drivers/chardev/struct.UART.html">drivers::chardev::UART</a></li><li><a href="drivers/chardev/ns16550a/struct.IER.html">drivers::chardev::ns16550a::IER</a></li><li><a href="drivers/chardev/ns16550a/struct.LSR.html">drivers::chardev::ns16550a::LSR</a></li><li><a href="drivers/chardev/ns16550a/struct.MCR.html">drivers::chardev::ns16550a::MCR</a></li><li><a href="drivers/chardev/ns16550a/struct.NS16550a.html">drivers::chardev::ns16550a::NS16550a</a></li><li><a href="drivers/chardev/ns16550a/struct.NS16550aInner.html">drivers::chardev::ns16550a::NS16550aInner</a></li><li><a href="drivers/chardev/ns16550a/struct.NS16550aRaw.html">drivers::chardev::ns16550a::NS16550aRaw</a></li><li><a href="drivers/chardev/ns16550a/struct.ReadWithoutDLAB.html">drivers::chardev::ns16550a::ReadWithoutDLAB</a></li><li><a href="drivers/chardev/ns16550a/struct.WriteWithoutDLAB.html">drivers::chardev::ns16550a::WriteWithoutDLAB</a></li><li><a href="drivers/gpu/struct.GPU_DEVICE.html">drivers::gpu::GPU_DEVICE</a></li><li><a href="drivers/gpu/struct.VirtIOGpuWrapper.html">drivers::gpu::VirtIOGpuWrapper</a></li><li><a href="drivers/input/struct.KEYBOARD_DEVICE.html">drivers::input::KEYBOARD_DEVICE</a></li><li><a href="drivers/input/struct.MOUSE_DEVICE.html">drivers::input::MOUSE_DEVICE</a></li><li><a href="drivers/input/struct.VirtIOInputInner.html">drivers::input::VirtIOInputInner</a></li><li><a href="drivers/input/struct.VirtIOInputWrapper.html">drivers::input::VirtIOInputWrapper</a></li><li><a href="drivers/net/struct.NET_DEVICE.html">drivers::net::NET_DEVICE</a></li><li><a href="drivers/net/struct.VirtIONetWrapper.html">drivers::net::VirtIONetWrapper</a></li><li><a href="drivers/plic/struct.PLIC.html">drivers::plic::PLIC</a></li><li><a href="fs/inode/struct.OSInode.html">fs::inode::OSInode</a></li><li><a href="fs/inode/struct.OSInodeInner.html">fs::inode::OSInodeInner</a></li><li><a href="fs/inode/struct.OpenFlags.html">fs::inode::OpenFlags</a></li><li><a href="fs/inode/struct.ROOT_INODE.html">fs::inode::ROOT_INODE</a></li><li><a href="fs/pipe/struct.Pipe.html">fs::pipe::Pipe</a></li><li><a href="fs/pipe/struct.PipeRingBuffer.html">fs::pipe::PipeRingBuffer</a></li><li><a href="fs/stdio/struct.Stdin.html">fs::stdio::Stdin</a></li><li><a href="fs/stdio/struct.Stdout.html">fs::stdio::Stdout</a></li><li><a href="mm/address/struct.PhysAddr.html">mm::address::PhysAddr</a></li><li><a href="mm/address/struct.PhysPageNum.html">mm::address::PhysPageNum</a></li><li><a href="mm/address/struct.SimpleRange.html">mm::address::SimpleRange</a></li><li><a href="mm/address/struct.SimpleRangeIterator.html">mm::address::SimpleRangeIterator</a></li><li><a href="mm/address/struct.VirtAddr.html">mm::address::VirtAddr</a></li><li><a href="mm/address/struct.VirtPageNum.html">mm::address::VirtPageNum</a></li><li><a href="mm/frame_allocator/struct.FRAME_ALLOCATOR.html">mm::frame_allocator::FRAME_ALLOCATOR</a></li><li><a href="mm/frame_allocator/struct.FrameTracker.html">mm::frame_allocator::FrameTracker</a></li><li><a href="mm/frame_allocator/struct.StackFrameAllocator.html">mm::frame_allocator::StackFrameAllocator</a></li><li><a href="mm/memory_set/struct.KERNEL_SPACE.html">mm::memory_set::KERNEL_SPACE</a></li><li><a href="mm/memory_set/struct.MapArea.html">mm::memory_set::MapArea</a></li><li><a href="mm/memory_set/struct.MapPermission.html">mm::memory_set::MapPermission</a></li><li><a href="mm/memory_set/struct.MemorySet.html">mm::memory_set::MemorySet</a></li><li><a href="mm/page_table/struct.PTEFlags.html">mm::page_table::PTEFlags</a></li><li><a href="mm/page_table/struct.PageTable.html">mm::page_table::PageTable</a></li><li><a href="mm/page_table/struct.PageTableEntry.html">mm::page_table::PageTableEntry</a></li><li><a href="mm/page_table/struct.UserBuffer.html">mm::page_table::UserBuffer</a></li><li><a href="mm/page_table/struct.UserBufferIterator.html">mm::page_table::UserBufferIterator</a></li><li><a href="net/struct.IPv4.html">net::IPv4</a></li><li><a href="net/struct.LOSE_NET_STACK.html">net::LOSE_NET_STACK</a></li><li><a href="net/struct.NetStack.html">net::NetStack</a></li><li><a href="net/port_table/struct.LISTEN_TABLE.html">net::port_table::LISTEN_TABLE</a></li><li><a href="net/port_table/struct.Port.html">net::port_table::Port</a></li><li><a href="net/port_table/struct.PortFd.html">net::port_table::PortFd</a></li><li><a href="net/socket/struct.SOCKET_TABLE.html">net::socket::SOCKET_TABLE</a></li><li><a href="net/socket/struct.Socket.html">net::socket::Socket</a></li><li><a href="net/tcp/struct.TCP.html">net::tcp::TCP</a></li><li><a href="net/udp/struct.UDP.html">net::udp::UDP</a></li><li><a href="sync/condvar/struct.Condvar.html">sync::condvar::Condvar</a></li><li><a href="sync/condvar/struct.CondvarInner.html">sync::condvar::CondvarInner</a></li><li><a href="sync/mutex/struct.MutexBlocking.html">sync::mutex::MutexBlocking</a></li><li><a href="sync/mutex/struct.MutexBlockingInner.html">sync::mutex::MutexBlockingInner</a></li><li><a href="sync/mutex/struct.MutexSpin.html">sync::mutex::MutexSpin</a></li><li><a href="sync/semaphore/struct.Semaphore.html">sync::semaphore::Semaphore</a></li><li><a href="sync/semaphore/struct.SemaphoreInner.html">sync::semaphore::SemaphoreInner</a></li><li><a href="sync/up/struct.INTR_MASKING_INFO.html">sync::up::INTR_MASKING_INFO</a></li><li><a href="sync/up/struct.IntrMaskingInfo.html">sync::up::IntrMaskingInfo</a></li><li><a href="sync/up/struct.UPIntrFreeCell.html">sync::up::UPIntrFreeCell</a></li><li><a href="sync/up/struct.UPIntrRefMut.html">sync::up::UPIntrRefMut</a></li><li><a href="sync/up/struct.UPSafeCellRaw.html">sync::up::UPSafeCellRaw</a></li><li><a href="task/struct.INITPROC.html">task::INITPROC</a></li><li><a href="task/context/struct.TaskContext.html">task::context::TaskContext</a></li><li><a href="task/id/struct.KSTACK_ALLOCATOR.html">task::id::KSTACK_ALLOCATOR</a></li><li><a href="task/id/struct.KernelStack.html">task::id::KernelStack</a></li><li><a href="task/id/struct.PID_ALLOCATOR.html">task::id::PID_ALLOCATOR</a></li><li><a href="task/id/struct.PidHandle.html">task::id::PidHandle</a></li><li><a href="task/id/struct.RecycleAllocator.html">task::id::RecycleAllocator</a></li><li><a href="task/id/struct.TaskUserRes.html">task::id::TaskUserRes</a></li><li><a href="task/manager/struct.PID2PCB.html">task::manager::PID2PCB</a></li><li><a href="task/manager/struct.TASK_MANAGER.html">task::manager::TASK_MANAGER</a></li><li><a href="task/manager/struct.TaskManager.html">task::manager::TaskManager</a></li><li><a href="task/process/struct.ProcessControlBlock.html">task::process::ProcessControlBlock</a></li><li><a href="task/process/struct.ProcessControlBlockInner.html">task::process::ProcessControlBlockInner</a></li><li><a href="task/processor/struct.PROCESSOR.html">task::processor::PROCESSOR</a></li><li><a href="task/processor/struct.Processor.html">task::processor::Processor</a></li><li><a href="task/signal/struct.SignalFlags.html">task::signal::SignalFlags</a></li><li><a href="task/task/struct.TaskControlBlock.html">task::task::TaskControlBlock</a></li><li><a href="task/task/struct.TaskControlBlockInner.html">task::task::TaskControlBlockInner</a></li><li><a href="timer/struct.TIMERS.html">timer::TIMERS</a></li><li><a href="timer/struct.TimerCondVar.html">timer::TimerCondVar</a></li><li><a href="trap/context/struct.TrapContext.html">trap::context::TrapContext</a></li></ul><h3 id="Enums">Enums</h3><ul class="enums docblock"><li><a href="drivers/plic/enum.IntrTargetPriority.html">drivers::plic::IntrTargetPriority</a></li><li><a href="fs/pipe/enum.RingBufferStatus.html">fs::pipe::RingBufferStatus</a></li><li><a href="mm/memory_set/enum.MapType.html">mm::memory_set::MapType</a></li><li><a href="task/task/enum.TaskStatus.html">task::task::TaskStatus</a></li></ul><h3 id="Traits">Traits</h3><ul class="traits docblock"><li><a href="drivers/chardev/trait.CharDevice.html">drivers::chardev::CharDevice</a></li><li><a href="drivers/gpu/trait.GpuDevice.html">drivers::gpu::GpuDevice</a></li><li><a href="drivers/input/trait.InputDevice.html">drivers::input::InputDevice</a></li><li><a href="drivers/net/trait.NetDevice.html">drivers::net::NetDevice</a></li><li><a href="fs/trait.File.html">fs::File</a></li><li><a href="mm/address/trait.StepByOne.html">mm::address::StepByOne</a></li><li><a href="mm/frame_allocator/trait.FrameAllocator.html">mm::frame_allocator::FrameAllocator</a></li><li><a href="sync/mutex/trait.Mutex.html">sync::mutex::Mutex</a></li></ul><h3 id="Macros">Macros</h3><ul class="macros docblock"><li><a href="macro.print.html">print</a></li><li><a href="macro.println.html">println</a></li></ul><h3 id="Functions">Functions</h3><ul class="functions docblock"><li><a href="board/fn.device_init.html">board::device_init</a></li><li><a href="board/fn.irq_handler.html">board::irq_handler</a></li><li><a href="fn.clear_bss.html">clear_bss</a></li><li><a href="console/fn.print.html">console::print</a></li><li><a href="drivers/block/fn.block_device_test.html">drivers::block::block_device_test</a></li><li><a href="fs/inode/fn.list_apps.html">fs::inode::list_apps</a></li><li><a href="fs/inode/fn.open_file.html">fs::inode::open_file</a></li><li><a href="fs/pipe/fn.make_pipe.html">fs::pipe::make_pipe</a></li><li><a href="lang_items/fn.backtrace.html">lang_items::backtrace</a></li><li><a href="lang_items/fn.panic.html">lang_items::panic</a></li><li><a href="mm/frame_allocator/fn.frame_alloc.html">mm::frame_allocator::frame_alloc</a></li><li><a href="mm/frame_allocator/fn.frame_alloc_more.html">mm::frame_allocator::frame_alloc_more</a></li><li><a href="mm/frame_allocator/fn.frame_allocator_alloc_more_test.html">mm::frame_allocator::frame_allocator_alloc_more_test</a></li><li><a href="mm/frame_allocator/fn.frame_allocator_test.html">mm::frame_allocator::frame_allocator_test</a></li><li><a href="mm/frame_allocator/fn.frame_dealloc.html">mm::frame_allocator::frame_dealloc</a></li><li><a href="mm/frame_allocator/fn.init_frame_allocator.html">mm::frame_allocator::init_frame_allocator</a></li><li><a href="mm/heap_allocator/fn.handle_alloc_error.html">mm::heap_allocator::handle_alloc_error</a></li><li><a href="mm/heap_allocator/fn.heap_test.html">mm::heap_allocator::heap_test</a></li><li><a href="mm/heap_allocator/fn.init_heap.html">mm::heap_allocator::init_heap</a></li><li><a href="mm/fn.init.html">mm::init</a></li><li><a href="mm/memory_set/fn.ebss.html">mm::memory_set::ebss</a></li><li><a href="mm/memory_set/fn.edata.html">mm::memory_set::edata</a></li><li><a href="mm/memory_set/fn.ekernel.html">mm::memory_set::ekernel</a></li><li><a href="mm/memory_set/fn.erodata.html">mm::memory_set::erodata</a></li><li><a href="mm/memory_set/fn.etext.html">mm::memory_set::etext</a></li><li><a href="mm/memory_set/fn.kernel_token.html">mm::memory_set::kernel_token</a></li><li><a href="mm/memory_set/fn.remap_test.html">mm::memory_set::remap_test</a></li><li><a href="mm/memory_set/fn.sbss_with_stack.html">mm::memory_set::sbss_with_stack</a></li><li><a href="mm/memory_set/fn.sdata.html">mm::memory_set::sdata</a></li><li><a href="mm/memory_set/fn.srodata.html">mm::memory_set::srodata</a></li><li><a href="mm/memory_set/fn.stext.html">mm::memory_set::stext</a></li><li><a href="mm/memory_set/fn.strampoline.html">mm::memory_set::strampoline</a></li><li><a href="mm/page_table/fn.translated_byte_buffer.html">mm::page_table::translated_byte_buffer</a></li><li><a href="mm/page_table/fn.translated_ref.html">mm::page_table::translated_ref</a></li><li><a href="mm/page_table/fn.translated_refmut.html">mm::page_table::translated_refmut</a></li><li><a href="mm/page_table/fn.translated_str.html">mm::page_table::translated_str</a></li><li><a href="net/fn.hexdump.html">net::hexdump</a></li><li><a href="net/fn.net_interrupt_handler.html">net::net_interrupt_handler</a></li><li><a href="net/port_table/fn.accept.html">net::port_table::accept</a></li><li><a href="net/port_table/fn.accept_connection.html">net::port_table::accept_connection</a></li><li><a href="net/port_table/fn.check_accept.html">net::port_table::check_accept</a></li><li><a href="net/port_table/fn.listen.html">net::port_table::listen</a></li><li><a href="net/port_table/fn.port_acceptable.html">net::port_table::port_acceptable</a></li><li><a href="net/socket/fn.add_socket.html">net::socket::add_socket</a></li><li><a href="net/socket/fn.get_s_a_by_index.html">net::socket::get_s_a_by_index</a></li><li><a href="net/socket/fn.get_socket.html">net::socket::get_socket</a></li><li><a href="net/socket/fn.pop_data.html">net::socket::pop_data</a></li><li><a href="net/socket/fn.push_data.html">net::socket::push_data</a></li><li><a href="net/socket/fn.remove_socket.html">net::socket::remove_socket</a></li><li><a href="net/socket/fn.set_s_a_by_index.html">net::socket::set_s_a_by_index</a></li><li><a href="fn.rust_main.html">rust_main</a></li><li><a href="sbi/fn.set_timer.html">sbi::set_timer</a></li><li><a href="sbi/fn.shutdown.html">sbi::shutdown</a></li><li><a href="syscall/fs/fn.sys_close.html">syscall::fs::sys_close</a></li><li><a href="syscall/fs/fn.sys_dup.html">syscall::fs::sys_dup</a></li><li><a href="syscall/fs/fn.sys_open.html">syscall::fs::sys_open</a></li><li><a href="syscall/fs/fn.sys_pipe.html">syscall::fs::sys_pipe</a></li><li><a href="syscall/fs/fn.sys_read.html">syscall::fs::sys_read</a></li><li><a href="syscall/fs/fn.sys_write.html">syscall::fs::sys_write</a></li><li><a href="syscall/gui/fn.sys_framebuffer.html">syscall::gui::sys_framebuffer</a></li><li><a href="syscall/gui/fn.sys_framebuffer_flush.html">syscall::gui::sys_framebuffer_flush</a></li><li><a href="syscall/input/fn.sys_event_get.html">syscall::input::sys_event_get</a></li><li><a href="syscall/input/fn.sys_key_pressed.html">syscall::input::sys_key_pressed</a></li><li><a href="syscall/net/fn.sys_accept.html">syscall::net::sys_accept</a></li><li><a href="syscall/net/fn.sys_connect.html">syscall::net::sys_connect</a></li><li><a href="syscall/net/fn.sys_listen.html">syscall::net::sys_listen</a></li><li><a href="syscall/process/fn.sys_exec.html">syscall::process::sys_exec</a></li><li><a href="syscall/process/fn.sys_exit.html">syscall::process::sys_exit</a></li><li><a href="syscall/process/fn.sys_fork.html">syscall::process::sys_fork</a></li><li><a href="syscall/process/fn.sys_get_time.html">syscall::process::sys_get_time</a></li><li><a href="syscall/process/fn.sys_getpid.html">syscall::process::sys_getpid</a></li><li><a href="syscall/process/fn.sys_kill.html">syscall::process::sys_kill</a></li><li><a href="syscall/process/fn.sys_waitpid.html">syscall::process::sys_waitpid</a></li><li><a href="syscall/process/fn.sys_yield.html">syscall::process::sys_yield</a></li><li><a href="syscall/sync/fn.sys_condvar_create.html">syscall::sync::sys_condvar_create</a></li><li><a href="syscall/sync/fn.sys_condvar_signal.html">syscall::sync::sys_condvar_signal</a></li><li><a href="syscall/sync/fn.sys_condvar_wait.html">syscall::sync::sys_condvar_wait</a></li><li><a href="syscall/sync/fn.sys_mutex_create.html">syscall::sync::sys_mutex_create</a></li><li><a href="syscall/sync/fn.sys_mutex_lock.html">syscall::sync::sys_mutex_lock</a></li><li><a href="syscall/sync/fn.sys_mutex_unlock.html">syscall::sync::sys_mutex_unlock</a></li><li><a href="syscall/sync/fn.sys_semaphore_create.html">syscall::sync::sys_semaphore_create</a></li><li><a href="syscall/sync/fn.sys_semaphore_down.html">syscall::sync::sys_semaphore_down</a></li><li><a href="syscall/sync/fn.sys_semaphore_up.html">syscall::sync::sys_semaphore_up</a></li><li><a href="syscall/sync/fn.sys_sleep.html">syscall::sync::sys_sleep</a></li><li><a href="syscall/fn.syscall.html">syscall::syscall</a></li><li><a href="syscall/thread/fn.sys_gettid.html">syscall::thread::sys_gettid</a></li><li><a href="syscall/thread/fn.sys_thread_create.html">syscall::thread::sys_thread_create</a></li><li><a href="syscall/thread/fn.sys_waittid.html">syscall::thread::sys_waittid</a></li><li><a href="task/fn.add_initproc.html">task::add_initproc</a></li><li><a href="task/fn.block_current_and_run_next.html">task::block_current_and_run_next</a></li><li><a href="task/fn.block_current_task.html">task::block_current_task</a></li><li><a href="task/fn.check_signals_of_current.html">task::check_signals_of_current</a></li><li><a href="task/fn.current_add_signal.html">task::current_add_signal</a></li><li><a href="task/fn.exit_current_and_run_next.html">task::exit_current_and_run_next</a></li><li><a href="task/id/fn.kernel_stack_position.html">task::id::kernel_stack_position</a></li><li><a href="task/id/fn.kstack_alloc.html">task::id::kstack_alloc</a></li><li><a href="task/id/fn.pid_alloc.html">task::id::pid_alloc</a></li><li><a href="task/id/fn.trap_cx_bottom_from_tid.html">task::id::trap_cx_bottom_from_tid</a></li><li><a href="task/id/fn.ustack_bottom_from_tid.html">task::id::ustack_bottom_from_tid</a></li><li><a href="task/manager/fn.add_task.html">task::manager::add_task</a></li><li><a href="task/manager/fn.fetch_task.html">task::manager::fetch_task</a></li><li><a href="task/manager/fn.insert_into_pid2process.html">task::manager::insert_into_pid2process</a></li><li><a href="task/manager/fn.pid2process.html">task::manager::pid2process</a></li><li><a href="task/manager/fn.remove_from_pid2process.html">task::manager::remove_from_pid2process</a></li><li><a href="task/manager/fn.wakeup_task.html">task::manager::wakeup_task</a></li><li><a href="task/processor/fn.current_kstack_top.html">task::processor::current_kstack_top</a></li><li><a href="task/processor/fn.current_process.html">task::processor::current_process</a></li><li><a href="task/processor/fn.current_task.html">task::processor::current_task</a></li><li><a href="task/processor/fn.current_trap_cx.html">task::processor::current_trap_cx</a></li><li><a href="task/processor/fn.current_trap_cx_user_va.html">task::processor::current_trap_cx_user_va</a></li><li><a href="task/processor/fn.current_user_token.html">task::processor::current_user_token</a></li><li><a href="task/processor/fn.run_tasks.html">task::processor::run_tasks</a></li><li><a href="task/processor/fn.schedule.html">task::processor::schedule</a></li><li><a href="task/processor/fn.take_current_task.html">task::processor::take_current_task</a></li><li><a href="task/fn.suspend_current_and_run_next.html">task::suspend_current_and_run_next</a></li><li><a href="task/switch/fn.__switch.html">task::switch::__switch</a></li><li><a href="timer/fn.add_timer.html">timer::add_timer</a></li><li><a href="timer/fn.check_timer.html">timer::check_timer</a></li><li><a href="timer/fn.get_time.html">timer::get_time</a></li><li><a href="timer/fn.get_time_ms.html">timer::get_time_ms</a></li><li><a href="timer/fn.set_next_trigger.html">timer::set_next_trigger</a></li><li><a href="trap/fn.disable_supervisor_interrupt.html">trap::disable_supervisor_interrupt</a></li><li><a href="trap/fn.enable_supervisor_interrupt.html">trap::enable_supervisor_interrupt</a></li><li><a href="trap/fn.enable_timer_interrupt.html">trap::enable_timer_interrupt</a></li><li><a href="trap/fn.init.html">trap::init</a></li><li><a href="trap/fn.set_kernel_trap_entry.html">trap::set_kernel_trap_entry</a></li><li><a href="trap/fn.set_user_trap_entry.html">trap::set_user_trap_entry</a></li><li><a href="trap/fn.trap_from_kernel.html">trap::trap_from_kernel</a></li><li><a href="trap/fn.trap_handler.html">trap::trap_handler</a></li><li><a href="trap/fn.trap_return.html">trap::trap_return</a></li></ul><h3 id="Typedefs">Typedefs</h3><ul class="typedefs docblock"><li><a href="board/type.BlockDeviceImpl.html">board::BlockDeviceImpl</a></li><li><a href="board/type.CharDeviceImpl.html">board::CharDeviceImpl</a></li><li><a href="mm/address/type.VPNRange.html">mm::address::VPNRange</a></li><li><a href="mm/frame_allocator/type.FrameAllocatorImpl.html">mm::frame_allocator::FrameAllocatorImpl</a></li></ul><h3 id="Statics">Statics</h3><ul class="statics docblock"><li><a href="drivers/gpu/static.BMP_DATA.html">drivers::gpu::BMP_DATA</a></li><li><a href="mm/heap_allocator/static.HEAP_ALLOCATOR.html">mm::heap_allocator::HEAP_ALLOCATOR</a></li><li><a href="mm/heap_allocator/static.HEAP_SPACE.html">mm::heap_allocator::HEAP_SPACE</a></li></ul><h3 id="Constants">Constants</h3><ul class="constants docblock"><li><a href="board/constant.CLOCK_FREQ.html">board::CLOCK_FREQ</a></li><li><a href="board/constant.MMIO.html">board::MMIO</a></li><li><a href="board/constant.VIRTGPU_XRES.html">board::VIRTGPU_XRES</a></li><li><a href="board/constant.VIRTGPU_YRES.html">board::VIRTGPU_YRES</a></li><li><a href="board/constant.VIRT_PLIC.html">board::VIRT_PLIC</a></li><li><a href="board/constant.VIRT_UART.html">board::VIRT_UART</a></li><li><a href="config/constant.KERNEL_HEAP_SIZE.html">config::KERNEL_HEAP_SIZE</a></li><li><a href="config/constant.KERNEL_STACK_SIZE.html">config::KERNEL_STACK_SIZE</a></li><li><a href="config/constant.MEMORY_END.html">config::MEMORY_END</a></li><li><a href="config/constant.PAGE_SIZE.html">config::PAGE_SIZE</a></li><li><a href="config/constant.PAGE_SIZE_BITS.html">config::PAGE_SIZE_BITS</a></li><li><a href="config/constant.TRAMPOLINE.html">config::TRAMPOLINE</a></li><li><a href="config/constant.TRAP_CONTEXT_BASE.html">config::TRAP_CONTEXT_BASE</a></li><li><a href="config/constant.USER_STACK_SIZE.html">config::USER_STACK_SIZE</a></li><li><a href="drivers/block/virtio_blk/constant.VIRTIO0.html">drivers::block::virtio_blk::VIRTIO0</a></li><li><a href="drivers/gpu/constant.VIRTIO7.html">drivers::gpu::VIRTIO7</a></li><li><a href="drivers/input/constant.VIRTIO5.html">drivers::input::VIRTIO5</a></li><li><a href="drivers/input/constant.VIRTIO6.html">drivers::input::VIRTIO6</a></li><li><a href="drivers/net/constant.VIRTIO8.html">drivers::net::VIRTIO8</a></li><li><a href="fs/pipe/constant.RING_BUFFER_SIZE.html">fs::pipe::RING_BUFFER_SIZE</a></li><li><a href="mm/address/constant.PA_WIDTH_SV39.html">mm::address::PA_WIDTH_SV39</a></li><li><a href="mm/address/constant.PPN_WIDTH_SV39.html">mm::address::PPN_WIDTH_SV39</a></li><li><a href="mm/address/constant.VA_WIDTH_SV39.html">mm::address::VA_WIDTH_SV39</a></li><li><a href="mm/address/constant.VPN_WIDTH_SV39.html">mm::address::VPN_WIDTH_SV39</a></li><li><a href="syscall/constant.SYSCALL_ACCEPT.html">syscall::SYSCALL_ACCEPT</a></li><li><a href="syscall/constant.SYSCALL_CLOSE.html">syscall::SYSCALL_CLOSE</a></li><li><a href="syscall/constant.SYSCALL_CONDVAR_CREATE.html">syscall::SYSCALL_CONDVAR_CREATE</a></li><li><a href="syscall/constant.SYSCALL_CONDVAR_SIGNAL.html">syscall::SYSCALL_CONDVAR_SIGNAL</a></li><li><a href="syscall/constant.SYSCALL_CONDVAR_WAIT.html">syscall::SYSCALL_CONDVAR_WAIT</a></li><li><a href="syscall/constant.SYSCALL_CONNECT.html">syscall::SYSCALL_CONNECT</a></li><li><a href="syscall/constant.SYSCALL_DUP.html">syscall::SYSCALL_DUP</a></li><li><a href="syscall/constant.SYSCALL_EVENT_GET.html">syscall::SYSCALL_EVENT_GET</a></li><li><a href="syscall/constant.SYSCALL_EXEC.html">syscall::SYSCALL_EXEC</a></li><li><a href="syscall/constant.SYSCALL_EXIT.html">syscall::SYSCALL_EXIT</a></li><li><a href="syscall/constant.SYSCALL_FORK.html">syscall::SYSCALL_FORK</a></li><li><a href="syscall/constant.SYSCALL_FRAMEBUFFER.html">syscall::SYSCALL_FRAMEBUFFER</a></li><li><a href="syscall/constant.SYSCALL_FRAMEBUFFER_FLUSH.html">syscall::SYSCALL_FRAMEBUFFER_FLUSH</a></li><li><a href="syscall/constant.SYSCALL_GETPID.html">syscall::SYSCALL_GETPID</a></li><li><a href="syscall/constant.SYSCALL_GETTID.html">syscall::SYSCALL_GETTID</a></li><li><a href="syscall/constant.SYSCALL_GET_TIME.html">syscall::SYSCALL_GET_TIME</a></li><li><a href="syscall/constant.SYSCALL_KEY_PRESSED.html">syscall::SYSCALL_KEY_PRESSED</a></li><li><a href="syscall/constant.SYSCALL_KILL.html">syscall::SYSCALL_KILL</a></li><li><a href="syscall/constant.SYSCALL_LISTEN.html">syscall::SYSCALL_LISTEN</a></li><li><a href="syscall/constant.SYSCALL_MUTEX_CREATE.html">syscall::SYSCALL_MUTEX_CREATE</a></li><li><a href="syscall/constant.SYSCALL_MUTEX_LOCK.html">syscall::SYSCALL_MUTEX_LOCK</a></li><li><a href="syscall/constant.SYSCALL_MUTEX_UNLOCK.html">syscall::SYSCALL_MUTEX_UNLOCK</a></li><li><a href="syscall/constant.SYSCALL_OPEN.html">syscall::SYSCALL_OPEN</a></li><li><a href="syscall/constant.SYSCALL_PIPE.html">syscall::SYSCALL_PIPE</a></li><li><a href="syscall/constant.SYSCALL_READ.html">syscall::SYSCALL_READ</a></li><li><a href="syscall/constant.SYSCALL_SEMAPHORE_CREATE.html">syscall::SYSCALL_SEMAPHORE_CREATE</a></li><li><a href="syscall/constant.SYSCALL_SEMAPHORE_DOWN.html">syscall::SYSCALL_SEMAPHORE_DOWN</a></li><li><a href="syscall/constant.SYSCALL_SEMAPHORE_UP.html">syscall::SYSCALL_SEMAPHORE_UP</a></li><li><a href="syscall/constant.SYSCALL_SLEEP.html">syscall::SYSCALL_SLEEP</a></li><li><a href="syscall/constant.SYSCALL_THREAD_CREATE.html">syscall::SYSCALL_THREAD_CREATE</a></li><li><a href="syscall/constant.SYSCALL_WAITPID.html">syscall::SYSCALL_WAITPID</a></li><li><a href="syscall/constant.SYSCALL_WAITTID.html">syscall::SYSCALL_WAITTID</a></li><li><a href="syscall/constant.SYSCALL_WRITE.html">syscall::SYSCALL_WRITE</a></li><li><a href="syscall/constant.SYSCALL_YIELD.html">syscall::SYSCALL_YIELD</a></li><li><a href="syscall/gui/constant.FB_VADDR.html">syscall::gui::FB_VADDR</a></li><li><a href="task/id/constant.IDLE_PID.html">task::id::IDLE_PID</a></li><li><a href="timer/constant.MSEC_PER_SEC.html">timer::MSEC_PER_SEC</a></li><li><a href="timer/constant.TICKS_PER_SEC.html">timer::TICKS_PER_SEC</a></li></ul></section></div></main><div id="rustdoc-vars" data-root-path="../" data-current-crate="os" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.64.0-nightly (f6f9d5e73 2022-08-04)" ></div></body></html> |