MCPcopy Create free account

hub / github.com/RWTH-OS/eduOS-rs / functions

Functions288 in github.com/RWTH-OS/eduOS-rs

↓ 23 callersMethodlen
(&self)
src/fs/initrd.rs:87
↓ 23 callersFunctionsend_eoi_to_master
()
src/arch/x86/kernel/irq.rs:74
↓ 22 callersMethodlock
(&self)
src/synch/mutex.rs:100
↓ 21 callersFunctionabort
Terminate the current running task
src/scheduler/mod.rs:51
↓ 14 callersMethodclone
(&self)
src/fs/initrd.rs:94
↓ 12 callersMethodlen
(&self)
src/fs/mod.rs:150
↓ 10 callersMethodis_empty
check if the list is empty
src/mm/linked_list.rs:18
↓ 9 callersFunctionirqsave
(f: F)
src/collections/mod.rs:6
↓ 8 callersFunctionirq_nested_disable
Disable IRQs (nested) Disable IRQs when unsure if IRQs were enabled at all. This function together with irq_nested_enable can be used in situations w
src/arch/x86/kernel/irq.rs:45
↓ 8 callersFunctionirq_nested_enable
Enable IRQs (nested) Can be used in conjunction with irq_nested_disable() to only enable interrupts again if they were enabled before.
src/arch/x86/kernel/irq.rs:55
↓ 8 callersMethodpop
Pop the task with the highest priority from the queue
src/scheduler/task.rs:110
↓ 7 callersMethodallocate
( &mut self, size: usize, alignment: Option<usize>, )
src/mm/freelist.rs:211
↓ 7 callersMethodderef
(&self)
src/synch/mutex.rs:118
↓ 7 callersMethodis_present
Returns whether this entry is valid (present).
src/arch/x86/mm/paging.rs:123
↓ 6 callersMethodinto
(self)
src/scheduler/task.rs:34
↓ 6 callersMethodread
(&self, buf: &mut [u8])
src/fs/initrd.rs:35
↓ 5 callersMethodpush
add address to the front of the list
src/mm/linked_list.rs:23
↓ 5 callersMethodremove
Remove the current node from the list
src/mm/linked_list.rs:88
↓ 4 callersFunctiondeallocate
(virtual_address: VirtAddr, size: usize)
src/arch/x86/mm/virtualmem.rs:78
↓ 4 callersMethodinto
(self)
src/arch/x86/kernel/gdt.rs:45
↓ 4 callersMethodpush
Add a task by its priority to the queue
src/scheduler/task.rs:92
↓ 4 callersMethodset
Mark this as a valid (present) entry and set address translation and flags. # Arguments `physical_address` - The physical memory address this entry
src/arch/x86/mm/paging.rs:143
↓ 4 callersFunctionwrite
(fd: FileDescriptor, buf: &[u8])
src/fd/mod.rs:84
↓ 3 callersMethodaddress
Return the stored physical address.
src/arch/x86/mm/paging.rs:114
↓ 3 callersFunctionallocate_aligned
(size: usize, alignment: usize)
src/arch/x86/mm/virtualmem.rs:51
↓ 3 callersFunctioncheck_path
Help function to check if the argument is an abolute path
src/fs/mod.rs:113
↓ 3 callersMethoddeallocate
(&mut self, address: T, size: usize)
src/mm/freelist.rs:75
↓ 3 callersFunctiondo_exit
Terminate the current running task
src/scheduler/mod.rs:44
↓ 3 callersFunctionget_boot_stack
()
src/arch/x86/mm/mod.rs:76
↓ 3 callersFunctionget_io_interface
(fd: FileDescriptor)
src/scheduler/mod.rs:77
↓ 3 callersFunctionget_kernel_root_page_table
()
src/arch/x86/mm/paging.rs:756
↓ 3 callersMethodis_user
(&self)
src/arch/x86/mm/paging.rs:132
↓ 3 callersMethodmkdir
(&mut self, path: &String)
src/fs/vfs.rs:256
↓ 3 callersFunctionopen
Open a file with the path `path`. `path` must be an absolute path to the file, while `flags` defined if the file is writeable or created on demand.
src/fs/mod.rs:95
↓ 3 callersMethodpop
Try to remove the first item in the list
src/mm/linked_list.rs:29
↓ 3 callersMethodreschedule
(&mut self)
src/scheduler/scheduler.rs:296
↓ 3 callersFunctionshutdown
(error_code: i32)
src/arch/x86/kernel/processor.rs:52
↓ 3 callersMethodtop
(&self)
src/arch/x86/mm/mod.rs:46
↓ 2 callersFunctionallocate
(size: usize)
src/arch/x86/mm/virtualmem.rs:32
↓ 2 callersMethodbottom
(&self)
src/arch/x86/mm/mod.rs:56
↓ 2 callersMethodcleanup
(&mut self)
src/scheduler/scheduler.rs:85
↓ 2 callersMethodclear_row
(&mut self, row: usize)
src/arch/x86/kernel/vga.rs:68
↓ 2 callersMethodderef_mut
(&mut self)
src/synch/mutex.rs:124
↓ 2 callersMethodget
(&mut self, name: &String)
src/fs/vfs.rs:39
↓ 2 callersMethodget_handle
(&self, opt: OpenOption)
src/fs/vfs.rs:188
↓ 2 callersMethodget_page_table_entry
Returns the PageTableEntry for the given page if it is present, otherwise returns None. This is the default implementation called only for PT. It is
src/arch/x86/mm/paging.rs:432
↓ 2 callersMethodinterrupt_top
(&self)
src/arch/x86/mm/mod.rs:60
↓ 2 callersFunctionirq_enable
Enable Interrupts
src/arch/x86/kernel/irq.rs:18
↓ 2 callersMethoditer
Return an iterator over the items in the list
src/mm/linked_list.rs:42
↓ 2 callersMethoditer_mut
Return an mutable iterator over the items in the list
src/mm/linked_list.rs:50
↓ 2 callersMethodlock
(&self)
src/synch/spinlock.rs:24
↓ 2 callersMethodlsdir
(&self)
src/fs/vfs.rs:269
↓ 2 callersMethodmap_pages
Maps a continuous range of pages. # Arguments `range` - The range of pages of size S `physical_address` - First physical address to map these pages
src/arch/x86/mm/paging.rs:594
↓ 2 callersFunctionmb
()
src/arch/x86/kernel/processor.rs:36
↓ 2 callersMethodmount
Mound memory region as file
src/fs/vfs.rs:289
↓ 2 callersMethodpop_from_queue
(&mut self, queue_index: usize)
src/scheduler/task.rs:100
↓ 2 callersFunctionreschedule
Trigger the scheduler to switch to the next available task
src/scheduler/mod.rs:34
↓ 2 callersMethodschedule
(&mut self)
src/scheduler/scheduler.rs:223
↓ 2 callersFunctionspawn
Create a new kernel task
src/scheduler/mod.rs:29
↓ 2 callersMethodunlock
(&self)
src/synch/spinlock.rs:47
↓ 2 callersMethodunlock_fair
(&self)
src/synch/spinlock.rs:60
↓ 2 callersFunctionwait_some_time
()
src/arch/x86/kernel/pit.rs:9
↓ 2 callersMethodwrite
(&self, buf: &[u8])
src/fs/initrd.rs:144
↓ 2 callersMethodwrite_byte
(&mut self, byte: u8)
src/arch/x86/kernel/vga.rs:77
↓ 1 callersFunction__jump_to_user_land
(ds: usize, stack: usize, cs: usize, entry: usize)
src/arch/x86/kernel/mod.rs:27
↓ 1 callersMethodabort
(&mut self)
src/scheduler/scheduler.rs:110
↓ 1 callersFunctionblock_current_task
()
src/scheduler/mod.rs:69
↓ 1 callersMethodblock_current_task
(&mut self)
src/scheduler/scheduler.rs:128
↓ 1 callersFunctionbss_init
()
src/arch/x86/kernel/start.rs:16
↓ 1 callersMethodcreate_stack_frame
(&mut self, func: extern "C" fn())
src/arch/x86/kernel/task.rs:89
↓ 1 callersFunctioncreate_usr_pgd
just an workaround to explaine the difference between kernel and user space
src/arch/x86/mm/paging.rs:786
↓ 1 callersFunctiondrop_user_space
()
src/arch/x86/mm/paging.rs:778
↓ 1 callersMethoddrop_user_space
(&mut self)
src/arch/x86/mm/paging.rs:446
↓ 1 callersFunctionentry
()
src/arch/x86/kernel/start.rs:25
↓ 1 callersMethodexit
(&mut self)
src/scheduler/scheduler.rs:92
↓ 1 callersMethodflush_from_tlb
(&self)
src/arch/x86/mm/paging.rs:244
↓ 1 callersFunctionfstat
(fd: FileDescriptor)
src/fd/mod.rs:94
↓ 1 callersMethodfstat
(&self)
src/fd/mod.rs:53
↓ 1 callersFunctionget_current_interrupt_stack
()
src/scheduler/mod.rs:55
↓ 1 callersMethodget_current_interrupt_stack
(&self)
src/scheduler/scheduler.rs:211
↓ 1 callersMethodget_current_taskid
(&self)
src/scheduler/scheduler.rs:205
↓ 1 callersMethodget_io_interface
( &self, fd: FileDescriptor, )
src/scheduler/scheduler.rs:190
↓ 1 callersMethodget_mut
(&mut self, name: &String)
src/fs/vfs.rs:32
↓ 1 callersFunctionget_root_page_table
()
src/scheduler/mod.rs:59
↓ 1 callersMethodget_root_page_table
(&self)
src/scheduler/scheduler.rs:215
↓ 1 callersMethodget_tid
(&self)
src/scheduler/scheduler.rs:49
↓ 1 callersFunctionhalt
()
src/arch/x86/kernel/processor.rs:44
↓ 1 callersFunctioninit
()
src/lib.rs:57
↓ 1 callersFunctioninit
()
src/arch/x86/kernel/vga.rs:137
↓ 1 callersMethodinit
(&mut self)
src/arch/x86/kernel/vga.rs:51
↓ 1 callersMethodinit
Initialize buddy system. `start` specifies the start address of the heap, while `len` specifies# the heap size.
src/mm/buddy.rs:34
↓ 1 callersFunctioninsert_io_interface
Insert IoInterface and create a new FileDescriptor
src/scheduler/mod.rs:84
↓ 1 callersMethodinsert_io_interface
( &mut self, io_interface: Arc<dyn IoInterface>, )
src/scheduler/scheduler.rs:156
↓ 1 callersMethodinterrupt_top
(&self)
src/scheduler/task.rs:170
↓ 1 callersFunctionirq_disable
Disable Interrupts
src/arch/x86/kernel/irq.rs:23
↓ 1 callersFunctionirq_remap
Normally, IRQs 0 to 7 are mapped to entries 8 to 15. This is a problem in protected mode, because IDT entry 8 is a Double Fault! Without remapping, ev
src/arch/x86/kernel/irq.rs:657
↓ 1 callersFunctionis_irq_enabled
Determines, if the interrupt flags (IF) is set
src/arch/x86/kernel/irq.rs:28
↓ 1 callersFunctionjump_to_user_land
Helper function to jump into the user space # Safety Be sure the the user-level function mapped into the user space.
src/arch/x86/kernel/mod.rs:36
↓ 1 callersFunctionload_application
(path: &String)
src/arch/x86/mod.rs:21
↓ 1 callersMethodload_idt
(&mut self)
src/arch/x86/kernel/irq.rs:472
next →1–100 of 288, ranked by callers