var searchIndex = new Map(JSON.parse('[\ ["os",{"doc":"","t":"CHCCCCCCQQHCCCCCCISSSESSEESSSSSFNNNNHNNNNEECFEOHNNNNNNNNCFSFFONNNNNNNNNNNNNNNNNNNNNNNNNNNNNKEEECEEECMMCMMTFFFTTFTTONNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNHNNOHNNNNNONNNNNNNNNNNNNNNNNNNNNONPPPFFSGNONNNNNNNNONNNNNNONNNHNNNNNONOONNNNNNNNNNNONNONFFNNNNNNNNNNNNNNNNNNNNNNHHEEEEEEEEEEEEECECECHECCEEEEESSFFFFKSISFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNOOMNNNNNNNNNNNNNNNNNNNNNNNNNFKIFFOMNNNNNNNOOMNNNOONHHHNNNNHNNNMNNOOONNNNNNNNNJJHHHPPFFFGFTTTTONNONNNNNONNNNNNNNNNNNNNNNNNNNONNHHHNNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNONONNNNONNNHNNHHNHHHNNNNNNNNNNNNNNNNNNNNNNNNNNOTTTFFFTTFFTTTNNNNNNOONNNNNNNNNNNNOONNNNNNNOONNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNHHHHNNNNNNNNNNNNNNNNNNHHHHEEEEEECCCCFFNNNNNNONNNNNNNNNNNOKFFFNNNNNNNNNONNNMNNOONNNNNNNNNNNMNNOFFNNNNONNNONNNNNNNNNNOFNNNNONNNNNSSSSSSSSSSSSSSSSSSSSSSSSSSSCCCHCHHHHHHHHHHHHHHHHHHHHHHHHHHHEFEEEEEEOHEHNNHCHEEEEEENHNCNECEECCEHEEECHCECNNNEFNNNNNOOONNNNSFFFFFFOONNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNHHNNHONOOHNNNNNNNNNNNNNNNNNNNNNOHNFFFOONHNNNNNNNNNHNNNHNNNNHONHHNNNNNNNNNHFFNNNNNNOONNOONNNNNNONNNOOONOOOOOONNNNNNNFFONNNNNOHHHHHHNNNNONNNHHNHNNNNNNTTTTTFNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHPPPFFGNNNNNNNNNONNNNNNONNNNONOOOONONNNNNNNNNSSFFOHNNNNHNNNONNHHNNNHHONNNNNNECHHHHHHHFNNNNNNOOONOONNNO","n":["board","clear_bss","config","console","drivers","fs","lang_items","mm","print","println","rust_main","sbi","sync","syscall","task","timer","trap","BlockDeviceImpl","CLOCK_FREQ","MEMORY_END","MMIO","CLOCK_FREQ","KERNEL_HEAP_SIZE","KERNEL_STACK_SIZE","MEMORY_END","MMIO","PAGE_SIZE","PAGE_SIZE_BITS","TRAMPOLINE","TRAP_CONTEXT_BASE","USER_STACK_SIZE","Stdout","borrow","borrow_mut","from","into","print","try_from","try_into","type_id","write_str","BLOCK_DEVICE","BLOCK_DEVICE","block","BLOCK_DEVICE","VirtIOBlock","__private_field","block_device_test","borrow","borrow_mut","deref","from","into","try_from","try_into","type_id","virtio_blk","QUEUE_FRAMES","VIRTIO0","VirtIOBlock","VirtioHal","__private_field","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","deref","dma_alloc","dma_dealloc","from","from","from","into","into","into","new","phys_to_virt","read_block","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","virt_to_phys","write_block","File","OpenFlags","Stdin","Stdout","inode","list_apps","make_pipe","open_file","pipe","read","readable","stdio","writable","write","CREATE","OSInode","OSInodeInner","OpenFlags","RDONLY","RDWR","ROOT_INODE","TRUNC","WRONLY","__private_field","all","bitand","bitand_assign","bitor","bitor_assign","bits","bits","bitxor","bitxor_assign","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","cmp","complement","contains","deref","difference","empty","eq","extend","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from_bits","from_bits_truncate","from_bits_unchecked","from_iter","hash","inner","inode","insert","intersection","intersects","into","into","into","into","is_all","is_empty","list_apps","new","not","offset","open_file","partial_cmp","read","read_all","read_write","readable","readable","remove","set","sub","sub_assign","symmetric_difference","to_owned","toggle","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","union","writable","writable","write","Empty","Full","Normal","Pipe","PipeRingBuffer","RING_BUFFER_SIZE","RingBufferStatus","all_write_ends_closed","arr","available_read","available_write","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","buffer","clone","clone_into","eq","from","from","from","head","into","into","into","make_pipe","new","read","read_byte","read_end_with_buffer","readable","readable","set_write_end","status","tail","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","writable","writable","write","write_byte","write_end","write_end_with_buffer","Stdin","Stdout","borrow","borrow","borrow_mut","borrow_mut","from","from","into","into","read","read","readable","readable","try_from","try_from","try_into","try_into","type_id","type_id","writable","writable","write","write","backtrace","panic","FrameTracker","KERNEL_SPACE","KERNEL_SPACE","MapPermission","MemorySet","PageTable","PageTableEntry","PhysAddr","PhysPageNum","StepByOne","UserBuffer","VirtAddr","VirtPageNum","address","frame_alloc","frame_allocator","frame_dealloc","heap_allocator","init","kernel_token","memory_set","page_table","remap_test","translated_byte_buffer","translated_ref","translated_refmut","translated_str","PA_WIDTH_SV39","PPN_WIDTH_SV39","PhysAddr","PhysPageNum","SimpleRange","SimpleRangeIterator","StepByOne","VA_WIDTH_SV39","VPNRange","VPN_WIDTH_SV39","VirtAddr","VirtPageNum","aligned","aligned","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","ceil","ceil","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","current","end","eq","eq","eq","eq","floor","floor","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","get_bytes_array","get_end","get_mut","get_mut","get_pte_array","get_ref","get_start","indexes","into","into","into","into","into","into","into_iter","into_iter","l","l","new","new","next","page_offset","page_offset","partial_cmp","partial_cmp","partial_cmp","partial_cmp","r","r","step","step","step","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","FRAME_ALLOCATOR","FrameAllocator","FrameAllocatorImpl","FrameTracker","StackFrameAllocator","__private_field","alloc","alloc","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","current","current","dealloc","dealloc","deref","drop","end","end","fmt","frame_alloc","frame_allocator_test","frame_dealloc","from","from","from","init","init_frame_allocator","into","into","into","new","new","new","ppn","recycled","recycled","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","HEAP_ALLOCATOR","HEAP_SPACE","handle_alloc_error","heap_test","init_heap","Framed","Identical","KERNEL_SPACE","MapArea","MapPermission","MapType","MemorySet","R","U","W","X","__private_field","activate","all","areas","bitand","bitand_assign","bitor","bitor_assign","bits","bits","bitxor","bitxor_assign","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","complement","contains","copy_data","data_frames","deref","difference","ebss","edata","ekernel","empty","eq","eq","erodata","etext","extend","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from_another","from_bits","from_bits_truncate","from_bits_unchecked","from_elf","from_existed_user","from_iter","hash","insert","insert_framed_area","intersection","intersects","into","into","into","into","into","is_all","is_empty","kernel_token","map","map_one","map_perm","map_trampoline","map_type","new","new_bare","new_kernel","not","page_table","partial_cmp","push","recycle_data_pages","remap_test","remove","remove_area_with_start_vpn","sbss_with_stack","sdata","set","srodata","stext","strampoline","sub","sub_assign","symmetric_difference","to_owned","to_owned","toggle","token","translate","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","union","unmap","unmap_one","vpn_range","A","D","G","PTEFlags","PageTable","PageTableEntry","R","U","UserBuffer","UserBufferIterator","V","W","X","all","bitand","bitand_assign","bitor","bitor_assign","bits","bits","bits","bitxor","bitxor_assign","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffers","buffers","clone","clone","clone_into","clone_into","cmp","complement","contains","current_buffer","current_idx","difference","empty","empty","eq","executable","extend","find_pte","find_pte_create","flags","fmt","fmt","fmt","fmt","fmt","frames","from","from","from","from","from","from_bits","from_bits_truncate","from_bits_unchecked","from_iter","from_token","hash","insert","intersection","intersects","into","into","into","into","into","into_iter","into_iter","is_all","is_empty","is_valid","len","map","new","new","new","next","not","partial_cmp","ppn","readable","remove","root_ppn","set","sub","sub_assign","symmetric_difference","to_owned","to_owned","toggle","token","translate","translate_va","translated_byte_buffer","translated_ref","translated_refmut","translated_str","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","union","unmap","writable","console_getchar","console_putchar","set_timer","shutdown","Condvar","Mutex","MutexBlocking","MutexSpin","Semaphore","UPSafeCell","condvar","mutex","semaphore","up","Condvar","CondvarInner","borrow","borrow","borrow_mut","borrow_mut","from","from","inner","into","into","new","signal","try_from","try_from","try_into","try_into","type_id","type_id","wait","wait_queue","Mutex","MutexBlocking","MutexBlockingInner","MutexSpin","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","from","from","from","inner","into","into","into","lock","lock","lock","locked","locked","new","new","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","unlock","unlock","unlock","wait_queue","Semaphore","SemaphoreInner","borrow","borrow","borrow_mut","borrow_mut","count","down","from","from","inner","into","into","new","try_from","try_from","try_into","try_into","type_id","type_id","up","wait_queue","UPSafeCell","borrow","borrow_mut","exclusive_access","from","inner","into","new","try_from","try_into","type_id","SYSCALL_CLOSE","SYSCALL_CONDVAR_CREATE","SYSCALL_CONDVAR_SIGNAL","SYSCALL_CONDVAR_WAIT","SYSCALL_DUP","SYSCALL_EXEC","SYSCALL_EXIT","SYSCALL_FORK","SYSCALL_GETPID","SYSCALL_GETTID","SYSCALL_GET_TIME","SYSCALL_KILL","SYSCALL_MUTEX_CREATE","SYSCALL_MUTEX_LOCK","SYSCALL_MUTEX_UNLOCK","SYSCALL_OPEN","SYSCALL_PIPE","SYSCALL_READ","SYSCALL_SEMAPHORE_CREATE","SYSCALL_SEMAPHORE_DOWN","SYSCALL_SEMAPHORE_UP","SYSCALL_SLEEP","SYSCALL_THREAD_CREATE","SYSCALL_WAITPID","SYSCALL_WAITTID","SYSCALL_WRITE","SYSCALL_YIELD","fs","process","sync","syscall","thread","sys_close","sys_dup","sys_open","sys_pipe","sys_read","sys_write","sys_exec","sys_exit","sys_fork","sys_get_time","sys_getpid","sys_kill","sys_waitpid","sys_yield","sys_condvar_create","sys_condvar_signal","sys_condvar_wait","sys_mutex_create","sys_mutex_lock","sys_mutex_unlock","sys_semaphore_create","sys_semaphore_down","sys_semaphore_up","sys_sleep","sys_gettid","sys_thread_create","sys_waittid","IDLE_PID","INITPROC","KernelStack","PidHandle","SignalFlags","TaskContext","TaskControlBlock","TaskStatus","__private_field","add_initproc","add_task","block_current_and_run_next","borrow","borrow_mut","check_signals_of_current","context","current_add_signal","current_kstack_top","current_process","current_task","current_trap_cx","current_trap_cx_user_va","current_user_token","deref","exit_current_and_run_next","from","id","into","kstack_alloc","manager","pid2process","pid_alloc","process","processor","remove_from_pid2process","remove_inactive_task","remove_task","run_tasks","schedule","signal","suspend_current_and_run_next","switch","take_current_task","task","try_from","try_into","type_id","wakeup_task","TaskContext","borrow","borrow_mut","from","goto_trap_return","into","ra","s","sp","try_from","try_into","type_id","zero_init","IDLE_PID","KSTACK_ALLOCATOR","KernelStack","PID_ALLOCATOR","PidHandle","RecycleAllocator","TaskUserRes","__private_field","__private_field","alloc","alloc_tid","alloc_user_res","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","current","dealloc","dealloc_tid","dealloc_user_res","deref","deref","drop","drop","drop","from","from","from","from","from","from","get_top","into","into","into","into","into","into","kernel_stack_position","kstack_alloc","new","new","pid_alloc","process","push_on_top","recycled","tid","trap_cx_bottom_from_tid","trap_cx_ppn","trap_cx_user_va","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","ustack_base","ustack_base","ustack_bottom_from_tid","ustack_top","PID2PCB","TASK_MANAGER","TaskManager","__private_field","__private_field","add","add_task","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","deref","deref","fetch","fetch_task","from","from","from","insert_into_pid2process","into","into","into","new","pid2process","ready_queue","remove","remove_from_pid2process","remove_task","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","wakeup_task","ProcessControlBlock","ProcessControlBlockInner","alloc_fd","alloc_tid","borrow","borrow","borrow_mut","borrow_mut","children","condvar_list","dealloc_tid","exec","exit_code","fd_table","fork","from","from","get_task","get_user_token","getpid","inner","inner_exclusive_access","into","into","is_zombie","memory_set","mutex_list","new","parent","pid","semaphore_list","signals","task_res_allocator","tasks","thread_count","try_from","try_from","try_into","try_into","type_id","type_id","PROCESSOR","Processor","__private_field","borrow","borrow","borrow_mut","borrow_mut","current","current","current_kstack_top","current_process","current_task","current_trap_cx","current_trap_cx_user_va","current_user_token","deref","from","from","get_idle_task_cx_ptr","idle_task_cx","into","into","new","run_tasks","schedule","take_current","take_current_task","try_from","try_from","try_into","try_into","type_id","type_id","SIGABRT","SIGFPE","SIGILL","SIGINT","SIGSEGV","SignalFlags","all","bitand","bitand_assign","bitor","bitor_assign","bits","bits","bitxor","bitxor_assign","borrow","borrow_mut","check_error","clone","clone_into","cmp","complement","contains","difference","empty","eq","extend","fmt","fmt","fmt","fmt","fmt","from","from_bits","from_bits_truncate","from_bits_unchecked","from_iter","hash","insert","intersection","intersects","into","is_all","is_empty","not","partial_cmp","remove","set","sub","sub_assign","symmetric_difference","to_owned","toggle","try_from","try_into","type_id","union","__switch","Blocked","Ready","Running","TaskControlBlock","TaskControlBlockInner","TaskStatus","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","eq","exit_code","from","from","from","get_status","get_trap_cx","get_user_token","inner","inner_exclusive_access","into","into","into","kstack","new","process","res","task_cx","task_status","to_owned","trap_cx_ppn","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","MSEC_PER_SEC","TICKS_PER_SEC","TIMERS","TimerCondVar","__private_field","add_timer","borrow","borrow","borrow_mut","borrow_mut","check_timer","cmp","deref","eq","expire_ms","from","from","get_time","get_time_ms","into","into","partial_cmp","remove_timer","set_next_trigger","task","try_from","try_from","try_into","try_into","type_id","type_id","TrapContext","context","enable_timer_interrupt","init","set_kernel_trap_entry","set_user_trap_entry","trap_from_kernel","trap_handler","trap_return","TrapContext","app_init_context","borrow","borrow_mut","fmt","from","into","kernel_satp","kernel_sp","sepc","set_sp","sstatus","trap_handler","try_from","try_into","type_id","x"],"q":[[0,"os"],[17,"os::board"],[21,"os::config"],[31,"os::console"],[41,"os::drivers"],[44,"os::drivers::block"],[57,"os::drivers::block::virtio_blk"],[91,"os::fs"],[105,"os::fs::inode"],[201,"os::fs::pipe"],[255,"os::fs::stdio"],[279,"os::lang_items"],[281,"os::mm"],[308,"os::mm::address"],[431,"os::mm::frame_allocator"],[480,"os::mm::heap_allocator"],[485,"os::mm::memory_set"],[618,"os::mm::page_table"],[745,"os::sbi"],[749,"os::sync"],[759,"os::sync::condvar"],[780,"os::sync::mutex"],[817,"os::sync::semaphore"],[839,"os::sync::up"],[850,"os::syscall"],[882,"os::syscall::fs"],[888,"os::syscall::process"],[896,"os::syscall::sync"],[906,"os::syscall::thread"],[909,"os::task"],[957,"os::task::context"],[970,"os::task::id"],[1050,"os::task::manager"],[1090,"os::task::process"],[1131,"os::task::processor"],[1164,"os::task::signal"],[1221,"os::task::switch"],[1222,"os::task::task"],[1266,"os::timer"],[1297,"os::trap"],[1306,"os::trap::context"],[1323,"core::fmt"],[1324,"core::result"],[1325,"core::any"],[1326,"core::fmt"],[1327,"alloc::sync"],[1328,"alloc::vec"],[1329,"core::cmp"],[1330,"easy_fs::vfs"],[1331,"core::iter::traits::collect"],[1332,"core::fmt"],[1333,"core::hash"],[1334,"core::panic::panic_info"],[1335,"core::marker"],[1336,"core::cmp"],[1337,"core::alloc::layout"],[1338,"alloc::string"],[1339,"core::cell"],[1340,"core::marker"],[1341,"alloc::collections::binary_heap"]],"d":["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the set containing all flags.","Returns the intersection between the two sets of flags.","Disables all flags disabled in the set.","Returns the union of the two sets of flags.","Adds the set of flags.","Returns the raw value of the flags currently stored.","","Returns the left flags, but with all the right flags …","Toggles the set of flags.","","","","","","","","","","","","Returns the complement of this set of flags.","Returns true if all of the flags in other are contained …","","Returns the difference between the flags in self and other.","Returns an empty set of flags.","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Convert from underlying bit representation, unless that …","Convert from underlying bit representation, dropping any …","Convert from underlying bit representation, preserving all …","","","","","Inserts the specified flags in-place.","Returns the intersection between the flags in self and …","Returns true if there are flags common to both self and …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Returns true if all flags are currently set.","Returns true if no flags are currently stored.","","","Returns the complement of this set of flags.","","","","","","Do not check validity for simplicity Return (readable, …","","","Removes the specified flags in-place.","Inserts or removes the specified flags depending on the …","Returns the set difference of the two sets of flags.","Disables all flags enabled in the set.","Returns the symmetric difference between the flags in self …","","Toggles the specified flags in-place.","","","","","","","","","","","","","Returns the union of between the flags in self and other.","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Return (read_end, write_end)","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Definitions","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the set containing all flags.","","Returns the intersection between the two sets of flags.","Disables all flags disabled in the set.","Returns the union of the two sets of flags.","Adds the set of flags.","Returns the raw value of the flags currently stored.","","Returns the left flags, but with all the right flags …","Toggles the set of flags.","","","","","","","","","","","","","","","","Returns the complement of this set of flags.","Returns true if all of the flags in other are contained …","data: start-aligned but maybe with shorter length assume …","","","Returns the difference between the flags in self and other.","","","","Returns an empty set of flags.","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Convert from underlying bit representation, unless that …","Convert from underlying bit representation, dropping any …","Convert from underlying bit representation, preserving all …","Include sections in elf and trampoline, also returns …","","","","Inserts the specified flags in-place.","Assume that no conflicts.","Returns the intersection between the flags in self and …","Returns true if there are flags common to both self and …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Returns true if all flags are currently set.","Returns true if no flags are currently stored.","","","","","Mention that trampoline is not collected by areas.","","","","Without kernel stacks.","Returns the complement of this set of flags.","","","","","","Removes the specified flags in-place.","","","","Inserts or removes the specified flags depending on the …","","","","Returns the set difference of the two sets of flags.","Disables all flags enabled in the set.","Returns the symmetric difference between the flags in self …","","","Toggles the specified flags in-place.","","","","","","","","","","","","","","","","","","Returns the union of between the flags in self and other.","","","","","","","","","","","","","","","","","Returns the set containing all flags.","Returns the intersection between the two sets of flags.","Disables all flags disabled in the set.","Returns the union of the two sets of flags.","Adds the set of flags.","Returns the raw value of the flags currently stored.","","","Returns the left flags, but with all the right flags …","Toggles the set of flags.","","","","","","","","","","","","","","","","","","Returns the complement of this set of flags.","Returns true if all of the flags in other are contained …","","","Returns the difference between the flags in self and other.","Returns an empty set of flags.","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Convert from underlying bit representation, unless that …","Convert from underlying bit representation, dropping any …","Convert from underlying bit representation, preserving all …","","Temporarily used to get arguments from user space.","","Inserts the specified flags in-place.","Returns the intersection between the flags in self and …","Returns true if there are flags common to both self and …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","Returns true if all flags are currently set.","Returns true if no flags are currently stored.","","","","","","","","Returns the complement of this set of flags.","","","","Removes the specified flags in-place.","","Inserts or removes the specified flags depending on the …","Returns the set difference of the two sets of flags.","Disables all flags enabled in the set.","Returns the symmetric difference between the flags in self …","","","Toggles the specified flags in-place.","","","","","","","Load a string from other address spaces into kernel space …","","","","","","","","","","","","","","","","Returns the union of between the flags in self and other.","","","use sbi call to getchar from console (qemu uart handler)","use sbi call to putchar in console (qemu uart handler)","use sbi call to set timer","use sbi call to shutdown the kernel","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","Wrap a static data structure inside it so that we are able …","","","Panic if the data has been borrowed.","Returns the argument unchanged.","inner data","Calls U::from(self).","User is responsible to guarantee that inner struct is only …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","If there is not a child process whose pid is same as …","","","","","","","","","","","","","","thread does not exist, return -1 thread has not exited …","","","","","","","","","","","","","","","","","","","","","","","","","Exit the current ‘Running’ task and run the next task …","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Return (bottom, top) of a kernel stack in kernel space.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","Only support processes with a single thread.","","","Only support processes with a single thread.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","Returns the set containing all flags.","Returns the intersection between the two sets of flags.","Disables all flags disabled in the set.","Returns the union of the two sets of flags.","Adds the set of flags.","Returns the raw value of the flags currently stored.","","Returns the left flags, but with all the right flags …","Toggles the set of flags.","","","","","","","Returns the complement of this set of flags.","Returns true if all of the flags in other are contained …","Returns the difference between the flags in self and other.","Returns an empty set of flags.","","","","","","","","Returns the argument unchanged.","Convert from underlying bit representation, unless that …","Convert from underlying bit representation, dropping any …","Convert from underlying bit representation, preserving all …","","","Inserts the specified flags in-place.","Returns the intersection between the flags in self and …","Returns true if there are flags common to both self and …","Calls U::from(self).","Returns true if all flags are currently set.","Returns true if no flags are currently stored.","Returns the complement of this set of flags.","","Removes the specified flags in-place.","Inserts or removes the specified flags depending on the …","Returns the set difference of the two sets of flags.","Disables all flags enabled in the set.","Returns the symmetric difference between the flags in self …","","Toggles the specified flags in-place.","","","","Returns the union of between the flags in self and other.","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,6,0,6,6,6,6,0,0,0,0,0,9,0,9,9,9,9,9,9,9,9,0,0,0,0,0,12,18,101,12,18,101,12,12,101,101,18,101,12,18,101,12,18,101,18,18,101,12,18,101,12,18,101,12,101,18,0,0,0,0,0,0,0,0,0,21,21,0,21,21,24,0,0,0,24,24,0,24,24,27,24,24,24,24,24,24,24,24,24,34,102,27,24,34,102,27,24,24,24,24,24,24,27,24,24,24,24,24,24,24,24,24,34,102,27,24,24,24,24,24,24,34,102,24,24,24,34,102,27,24,24,24,0,34,24,102,0,24,34,34,24,34,34,24,24,24,24,24,24,24,34,102,27,24,34,102,27,24,34,102,27,24,24,34,34,34,37,37,37,0,0,0,0,36,36,36,36,38,36,37,38,36,37,38,37,37,37,38,36,37,36,38,36,37,0,36,38,36,38,38,38,36,36,36,37,38,36,37,38,36,37,38,36,37,38,38,38,36,36,38,0,0,39,40,39,40,39,40,39,40,39,40,39,40,39,40,39,40,39,40,39,40,39,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,43,55,42,43,44,45,46,55,42,43,44,45,46,42,43,42,43,44,45,46,42,43,44,45,46,42,43,44,45,55,55,42,43,44,45,42,43,42,43,44,45,55,42,42,42,43,43,43,44,44,44,45,45,45,46,44,46,42,44,44,42,46,45,55,42,43,44,45,46,55,46,103,46,55,46,55,42,43,42,43,44,45,103,46,47,44,45,42,43,44,45,46,55,42,43,44,45,46,55,42,43,44,45,46,55,42,43,44,45,46,0,0,0,0,0,58,56,57,13,57,58,13,57,58,57,104,56,57,58,13,57,104,13,0,0,0,13,57,58,57,0,13,57,58,56,13,57,13,57,104,13,57,58,13,57,58,13,57,58,0,0,0,0,0,62,62,0,0,0,0,0,61,61,61,61,65,60,61,60,61,61,61,61,61,61,61,61,60,63,65,62,61,60,63,65,62,61,62,61,62,61,61,61,61,63,63,65,61,0,0,0,61,62,61,0,0,61,62,61,61,61,61,61,60,63,65,62,61,63,61,61,61,60,60,61,61,61,60,61,61,60,63,65,62,61,61,61,0,63,63,63,60,63,63,60,60,61,60,61,60,60,0,61,60,0,0,61,0,0,0,61,61,61,62,61,61,60,60,60,63,65,62,61,60,63,65,62,61,60,63,65,62,61,61,63,63,63,66,66,66,0,0,0,66,66,0,0,66,66,66,66,66,66,66,66,66,66,53,66,66,64,22,67,66,53,64,22,67,66,53,22,67,66,53,66,53,66,66,66,67,67,66,66,53,66,53,66,64,64,53,66,66,66,66,66,64,64,22,67,66,53,66,66,66,66,64,66,66,66,66,64,22,67,66,53,22,67,66,66,53,22,64,64,22,53,67,66,66,53,53,66,64,66,66,66,66,66,53,66,64,64,64,0,0,0,0,64,22,67,66,53,64,22,67,66,53,64,22,67,66,53,66,64,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,69,105,69,105,69,105,69,69,105,69,69,69,105,69,105,69,105,69,105,0,0,0,0,71,72,106,71,72,106,71,72,106,72,71,72,106,70,71,72,71,106,71,72,71,72,106,71,72,106,71,72,106,70,71,72,106,0,0,73,107,73,107,107,73,73,107,73,73,107,73,73,107,73,107,73,107,73,107,0,15,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,77,77,0,0,0,0,0,0,0,0,0,77,0,77,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,77,77,0,0,80,80,80,80,80,80,80,80,80,80,80,80,0,0,0,0,0,0,0,83,84,81,82,82,81,85,86,82,83,84,81,85,86,82,83,84,81,81,82,82,83,84,85,86,82,81,85,86,82,83,84,86,81,85,86,82,83,84,0,0,81,82,0,82,86,81,82,0,82,82,81,85,86,82,83,84,81,85,86,82,83,84,81,85,86,82,83,84,82,82,0,82,0,0,0,89,90,88,0,88,89,90,88,89,90,89,90,88,0,88,89,90,0,88,89,90,88,0,88,88,0,0,88,89,90,88,89,90,88,89,90,0,0,0,92,92,78,92,78,92,92,92,92,78,92,92,78,78,92,92,92,78,78,78,78,92,92,92,92,78,92,78,92,92,92,92,92,78,92,78,92,78,92,0,0,95,93,95,93,95,93,93,0,0,0,0,0,0,95,93,95,93,93,93,95,93,0,0,93,0,93,95,93,95,93,95,76,76,76,76,76,0,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,0,96,96,96,0,0,0,79,97,96,79,97,96,96,96,96,97,79,97,96,97,97,79,79,79,79,97,96,79,79,79,97,97,97,96,97,79,97,96,79,97,96,79,97,96,0,0,0,0,99,0,98,99,98,99,0,98,99,98,98,98,99,0,0,98,99,98,0,0,98,98,99,98,99,98,99,0,0,0,0,0,0,0,0,0,0,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94],"f":"`{{}b}````````{{}d}`````````````````````{ce{}{}}0{cc{}}1{fb}{c{{h{e}}}{}{}}0{cj{}}{{ln}A`}``````755{Ab{{Af{Ad}}}}56332``````666666{Ah{{An{{Al{Aj}}}}}}{B`B`}{{B`B`}Bb}888999{{}Bd}2{{BdB`{Bh{Bf}}}b}88888877730`````````{{BjBl}B`}{BjBn}`01``````````{{}C`}{{C`C`}C`}{{C`C`}b}10{C`Cb}`21{ce{}{}}0000000{C`C`}{{ce}b{}{}}{{C`C`}Cd}2{{C`C`}Bn}{Cf{{Af{Ch}}}}891{{C`c}b{{Cl{}{{Cj{C`}}}}}}{{C`Cn}A`}0000{cc{}}000{Cb{{D`{C`}}}}{CbC`}0{cC`{{Cl{}{{Cj{C`}}}}}}{{C`c}bDb}``>?8<<<<{C`Bn}0{{}b}{{BnBn{Af{Ch}}}Dd}>`{{nC`}{{D`{{Af{Dd}}}}}}{{C`C`}{{D`{Cd}}}}{{DdBl}B`}{Dd{{Al{Bf}}}}{C`{{Df{BnBn}}}}{DdBn}`{{C`C`}b}{{C`C`Bn}b}{{C`C`}C`}20{ce{}{}}3{c{{h{e}}}{}{}}0000000{cj{}}00036`9```````{DhBn}`{DhB`}0444444`{DjDj}{{ce}b{}{}}{{DjDj}Bn}{cc{}}00`888{{}{{Df{{Af{Dl}}{Af{Dl}}}}}}{{}Dh}{{DlBl}B`}{DhBf}{{{Af{{An{Dh}}}}}Dl}{DlBn}`{{Dh{Af{Dl}}}b}``?>>>>>>===1`4{{DhBf}b}`3``{ce{}{}}0009900{{DnBl}B`}{{E`Bl}B`}{DnBn}{E`Bn}{c{{h{e}}}{}{}}000{cj{}}03254{{}b}{Ebd}``````````````````1````````````````````{EdBn}{EfBn}::::::::::::{EdEh}{EfEj}{EdEd}{EfEf}{EhEh}{EjEj}{{{El{c}}}{{El{c}}}{EnF`FbFdFfFh}}{{ce}b{}{}}0000{{EdEd}Cd}{{EfEf}Cd}{{EhEh}Cd}{{EjEj}Cd}``{{EdEd}Bn}{{EfEf}Bn}{{EhEh}Bn}{{EjEj}Bn}?>{{EdCn}A`}{{EfCn}A`}{{EhCn}A`}{{EjCn}A`}{cc{}}0{B`Ed}{EhEd}{B`Ef}3{EjEf}4{EdEh}{B`Eh}{EfEj}{B`Ej}88{Eh{{Bh{Bf}}}}{{{El{c}}}c{EnF`FbFdFf}}{Edc{}}{Ehc{}}{Eh{{Bh{Fj}}}}23{Ej{{Fl{B`}}}}{ce{}{}}000000{{{El{c}}}e{EnF`FbFdFf}{}}``{{cc}{{Fn{c}}}{EnF`FbFdFf}}{{cc}{{El{c}}}{EnF`FbFdFf}}{{{Fn{c}}}{{D`{e}}}{EnF`FbFdFf}{}}{EdB`}{EfB`}{{EdEd}{{D`{Cd}}}}{{EfEf}{{D`{Cd}}}}{{EhEh}{{D`{Cd}}}}{{EjEj}{{D`{Cd}}}}``{Enb}{Ehb}{Ejb}====={c{{h{e}}}{}{}}00000000000{cj{}}00000``````{G`{{D`{Eh}}}}{Gb{{D`{Eh}}}}{ce{}{}}00000``{{G`Eh}b}{{GbEh}b}{Gd{{An{Gb}}}}{Ajb}``{{AjCn}A`}{{}{{D`{Aj}}}}{{}b}={cc{}}00{{GbEhEh}b}2999{{}G`}{EhAj}{{}Gb}```{c{{h{e}}}{}{}}00000{cj{}}00``{Gfd}88````````````{Ghb}{{}Gj}`{{GjGj}Gj}{{GjGj}b}10{GjBf}`21{ce{}{}}000000000{GlGl}{GjGj}{{ce}b{}{}}0{{GjGj}Cd}2{{GjGj}Bn}{{GnH`{Bh{Bf}}}b}`{Hb{{Af{{An{Gh}}}}}}:```;{{GlGl}Bn}3``{{Gjc}b{{Cl{}{{Cj{Gj}}}}}}{{GlCn}A`}{{GjCn}A`}0000{cc{}}0000{GnGn}{Bf{{D`{Gj}}}}{BfGj}0{{{Bh{Bf}}}{{Df{GhB`B`}}}}{GhGh}{cGj{{Cl{}{{Cj{Gj}}}}}}{{Gjc}bDb}{{GjGj}b}{{GhEfEfGj}b}{{GjGj}Gj}{{GjGj}Bn}{ce{}{}}0000{GjBn}0{{}B`}{{GnH`}b}{{GnH`Ej}b}`{Ghb}`{{EfEfGlGj}Gn}{{}Gh}0{GjGj}`{{GjGj}{{D`{Cd}}}}{{GhGn{D`{{Bh{Bf}}}}}b}5{{}b}?{{GhEj}b}``{{GjGjBn}b}```?{{GjGj}b}{{GjGj}Gj}??1{GhB`}{{GhEj}{{D`{Fj}}}}{c{{h{e}}}{}{}}000000000{cj{}}00004{{GnH`}b}{{GnH`Ej}b}``````````````{{}Hd}{{HdHd}Hd}{{HdHd}b}10{HdBf}``21{ce{}{}}000000000``{HdHd}{FjFj}{{ce}b{}{}}0{{HdHd}Cd}3{{HdHd}Bn}``89{{}Fj}1{FjBn}{{Hdc}b{{Cl{}{{Cj{Hd}}}}}}{{H`Ej}{{D`{Fj}}}}0{FjHd}{{HdCn}A`}0000`{cc{}}0000{Bf{{D`{Hd}}}}{BfHd}0{cHd{{Cl{}{{Cj{Hd}}}}}}{B`H`}{{Hdc}bDb}{{HdHd}b}{{HdHd}Hd}>{ce{}{}}0000{Blc{}}1{HdBn}0?{BlB`}{{H`EjEhHd}b}{{}H`}{{{Al{{Bh{Bf}}}}}Bl}{{EhHd}Fj}{Hf{{D`{c}}}{}}{HdHd}{{HdHd}{{D`{Cd}}}}{FjEh}{FjBn}>`{{HdHdBn}b}>?>==?{H`B`}{{H`Ej}{{D`{Fj}}}}{{H`Ef}{{D`{Ed}}}}{{B`BfB`}{{Al{{Bh{Bf}}}}}}{B`c{}}0{{B`Bf}Hh}{c{{h{e}}}{}{}}000000000{cj{}}0000{{HdHd}Hd}{{H`Ej}b};{{}B`}{B`b}0{Bnd}````````````{ce{}{}}000{cc{}}0`11{{}Hj}{Hjb}::::99{{Hj{Af{Hl}}}b}`````444444333`444{Hlb}{Hnb}{I`b}``{{}Hn}{{}I`}{c{{h{e}}}{}{}}00000{cj{}}00654```;;;;`{Ibb};;`<<{B`Ib}3333221``=={{{An{c}}}{{Id{c}}}{}}=`>{c{{An{c}}}{}}554``````````````````````````````{{B`{Fl{B`}}}If}`{B`If}0{{BfCb}If}1{{B`BfB`}If}0{{BfB`}If}{Bbd}{{}If}00{{B`Cb}If}{{IfBb}If}227{{B`B`}If}{BnIf}99999941{B`Bb}`````````{{}b}`0{ce{}{}}0{{}{{D`{{Df{Bbn}}}}}}`{Ihb}``````{Ij{{Af{Il}}}}{Bbb}{cc{}}`5```````{{{Af{In}}}b}````7```{c{{h{e}}}{}{}}0{cj{}}``883{B`J`}9```221{{}J`}`````````{JbB`}{Jdb}0<<<<<<<<<<<<`{{JbB`}b}11{Jf{{An{Jb}}}}{Jh{{An{Jb}}}}{Jjb}{Jlb}5<<<<<<{JlB`}{ce{}{}}00000{B`{{Df{B`B`}}}}{{}Jl}{{}Jb}{{{Af{Il}}B`Bn}Jd}{{}Jj}`{{Jlc}{}Jn}``{B`B`}{JdEh}{JdB`}{c{{h{e}}}{}{}}00000000000{cj{}}000002`{{B`B`}B`}3`````{{K`{Af{In}}}b}{{{Af{In}}}b}>>>>>>{Kb{{An{K`}}}}{Kd{{An{{Kf{B`{Af{Il}}}}}}}}{K`{{D`{{Af{In}}}}}}{{}{{D`{{Af{In}}}}}}{cc{}}00{{B`{Af{Il}}}b}{ce{}{}}00{{}K`}{B`{{D`{{Af{Il}}}}}}`:{B`b}:>>>>>>===:``{KhB`}04444``{{KhB`}b}{{{Af{Il}}{Bh{Bf}}{Al{Hh}}}b}``{{{Af{Il}}}{{Af{Il}}}}99{{KhB`}{{Af{In}}}}4{IlB`}`{Il{{Id{Kh}}}}::```{{{Bh{Bf}}}{{Af{Il}}}}``````7{c{{h{e}}}{}{}}000{cj{}}0```===={Kj{{D`{{Af{In}}}}}}`{{}B`}{{}{{Af{Il}}}}{{}{{D`{{Af{In}}}}}}{{}Kl}33{Kn{{An{Kj}}}}{cc{}}0{KjJ`}`{ce{}{}}0{{}Kj}{{}b}{J`b};8====<<``````{{}Ih}{{IhIh}Ih}{{IhIh}b}10{IhCb}`2177{Ih{{D`{{Df{Bbn}}}}}}{IhIh}{{ce}b{}{}}{{IhIh}Cd}2{{IhIh}Bn}780{{Ihc}b{{Cl{}{{Cj{Ih}}}}}}{{IhCn}A`}0000{cc{}}{Cb{{D`{Ih}}}}{CbIh}0{cIh{{Cl{}{{Cj{Ih}}}}}}{{Ihc}bDb}=>7{ce{}{}}{IhBn}0<{{IhIh}{{D`{Cd}}}}{{IhIh}b}{{IhIhBn}b}{{IhIh}Ih}2052{c{{h{e}}}{}{}}0{cj{}}2```````777777{L`L`}{{ce}b{}{}}{{L`L`}Bn}`???{LbL`}{LbKl}{InB`}`{In{{Id{Lb}}}}>>>`{{{Af{Il}}B`Bn}In}````?`999999888`````{{B`{Af{In}}}b}{ce{}{}}000{{}b}{{LdLd}Cd}{Lf{{An{{Lh{Ld}}}}}}{{LdLd}Bn}`{cc{}}0{{}B`}066{{LdLd}{{D`{Cd}}}}{{{Af{In}}}b}7`{c{{h{e}}}{}{}}000{cj{}}0``9999{{}d}00`{{B`B`B`B`B`}Kl}<<{{KlCn}A`}8=```{{KlB`}b}``554`","c":[],"p":[[1,"unit"],[1,"never"],[5,"Arguments",1323],[6,"Result",1324],[5,"TypeId",1325],[5,"Stdout",31],[1,"str"],[8,"Result",1323],[5,"BLOCK_DEVICE",44],[10,"BlockDevice",1326],[5,"Arc",1327],[5,"QUEUE_FRAMES",57],[5,"FrameTracker",431],[5,"Vec",1328],[5,"UPSafeCell",839],[1,"usize"],[1,"i32"],[5,"VirtIOBlock",57],[1,"u8"],[1,"slice"],[10,"File",91],[5,"UserBuffer",618],[1,"bool"],[5,"OpenFlags",105],[1,"u32"],[6,"Ordering",1329],[5,"ROOT_INODE",105],[5,"Inode",1330],[17,"Item"],[10,"IntoIterator",1331],[5,"Formatter",1323],[6,"Option",1332],[10,"Hasher",1333],[5,"OSInode",105],[1,"tuple"],[5,"PipeRingBuffer",201],[6,"RingBufferStatus",201],[5,"Pipe",201],[5,"Stdin",255],[5,"Stdout",255],[5,"PanicInfo",1334],[5,"PhysAddr",308],[5,"VirtAddr",308],[5,"PhysPageNum",308],[5,"VirtPageNum",308],[5,"SimpleRange",308],[10,"StepByOne",308],[10,"Copy",1335],[10,"PartialEq",1329],[10,"PartialOrd",1329],[10,"Debug",1323],[10,"Clone",1336],[5,"PageTableEntry",618],[1,"array"],[5,"SimpleRangeIterator",308],[10,"FrameAllocator",431],[5,"StackFrameAllocator",431],[5,"FRAME_ALLOCATOR",431],[5,"Layout",1337],[5,"MemorySet",485],[5,"MapPermission",485],[6,"MapType",485],[5,"MapArea",485],[5,"PageTable",618],[5,"KERNEL_SPACE",485],[5,"PTEFlags",618],[5,"UserBufferIterator",618],[5,"String",1338],[5,"Condvar",759],[10,"Mutex",780],[5,"MutexSpin",780],[5,"MutexBlocking",780],[5,"Semaphore",817],[5,"RefMut",1339],[1,"isize"],[5,"SignalFlags",1164],[5,"INITPROC",909],[5,"ProcessControlBlock",1090],[5,"TaskControlBlock",1222],[5,"TaskContext",957],[5,"RecycleAllocator",970],[5,"TaskUserRes",970],[5,"PID_ALLOCATOR",970],[5,"KSTACK_ALLOCATOR",970],[5,"PidHandle",970],[5,"KernelStack",970],[10,"Sized",1335],[5,"TaskManager",1050],[5,"TASK_MANAGER",1050],[5,"PID2PCB",1050],[5,"BTreeMap",1340],[5,"ProcessControlBlockInner",1090],[5,"Processor",1131],[5,"TrapContext",1306],[5,"PROCESSOR",1131],[6,"TaskStatus",1222],[5,"TaskControlBlockInner",1222],[5,"TimerCondVar",1266],[5,"TIMERS",1266],[5,"BinaryHeap",1341],[5,"VirtioHal",57],[5,"OSInodeInner",105],[8,"VPNRange",308],[8,"FrameAllocatorImpl",431],[5,"CondvarInner",759],[5,"MutexBlockingInner",780],[5,"SemaphoreInner",817]],"b":[[142,"impl-UpperHex-for-OpenFlags"],[143,"impl-Octal-for-OpenFlags"],[144,"impl-LowerHex-for-OpenFlags"],[145,"impl-Binary-for-OpenFlags"],[146,"impl-Debug-for-OpenFlags"],[364,"impl-From%3Cusize%3E-for-PhysAddr"],[365,"impl-From%3CPhysPageNum%3E-for-PhysAddr"],[366,"impl-From%3Cusize%3E-for-VirtAddr"],[368,"impl-From%3CVirtPageNum%3E-for-VirtAddr"],[370,"impl-From%3CPhysAddr%3E-for-PhysPageNum"],[371,"impl-From%3Cusize%3E-for-PhysPageNum"],[372,"impl-From%3CVirtAddr%3E-for-VirtPageNum"],[373,"impl-From%3Cusize%3E-for-VirtPageNum"],[539,"impl-Octal-for-MapPermission"],[540,"impl-Binary-for-MapPermission"],[541,"impl-LowerHex-for-MapPermission"],[542,"impl-Debug-for-MapPermission"],[543,"impl-UpperHex-for-MapPermission"],[671,"impl-Debug-for-PTEFlags"],[672,"impl-Octal-for-PTEFlags"],[673,"impl-LowerHex-for-PTEFlags"],[674,"impl-Binary-for-PTEFlags"],[675,"impl-UpperHex-for-PTEFlags"],[1191,"impl-Binary-for-SignalFlags"],[1192,"impl-Octal-for-SignalFlags"],[1193,"impl-Debug-for-SignalFlags"],[1194,"impl-LowerHex-for-SignalFlags"],[1195,"impl-UpperHex-for-SignalFlags"]]}]\ ]')); if (typeof exports !== 'undefined') exports.searchIndex = searchIndex; else if (window.initSearch) window.initSearch(searchIndex);