Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/RWTH-OS/eduOS-rs
/ functions
Functions
288 in github.com/RWTH-OS/eduOS-rs
⨍
Functions
288
◇
Types & classes
80
↓ 23 callers
Method
len
(&self)
src/fs/initrd.rs:87
↓ 23 callers
Function
send_eoi_to_master
()
src/arch/x86/kernel/irq.rs:74
↓ 22 callers
Method
lock
(&self)
src/synch/mutex.rs:100
↓ 21 callers
Function
abort
Terminate the current running task
src/scheduler/mod.rs:51
↓ 14 callers
Method
clone
(&self)
src/fs/initrd.rs:94
↓ 12 callers
Method
len
(&self)
src/fs/mod.rs:150
↓ 10 callers
Method
is_empty
check if the list is empty
src/mm/linked_list.rs:18
↓ 9 callers
Function
irqsave
(f: F)
src/collections/mod.rs:6
↓ 8 callers
Function
irq_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 callers
Function
irq_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 callers
Method
pop
Pop the task with the highest priority from the queue
src/scheduler/task.rs:110
↓ 7 callers
Method
allocate
( &mut self, size: usize, alignment: Option<usize>, )
src/mm/freelist.rs:211
↓ 7 callers
Method
deref
(&self)
src/synch/mutex.rs:118
↓ 7 callers
Method
is_present
Returns whether this entry is valid (present).
src/arch/x86/mm/paging.rs:123
↓ 6 callers
Method
into
(self)
src/scheduler/task.rs:34
↓ 6 callers
Method
read
(&self, buf: &mut [u8])
src/fs/initrd.rs:35
↓ 5 callers
Method
push
add address to the front of the list
src/mm/linked_list.rs:23
↓ 5 callers
Method
remove
Remove the current node from the list
src/mm/linked_list.rs:88
↓ 4 callers
Function
deallocate
(virtual_address: VirtAddr, size: usize)
src/arch/x86/mm/virtualmem.rs:78
↓ 4 callers
Method
into
(self)
src/arch/x86/kernel/gdt.rs:45
↓ 4 callers
Method
push
Add a task by its priority to the queue
src/scheduler/task.rs:92
↓ 4 callers
Method
set
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 callers
Function
write
(fd: FileDescriptor, buf: &[u8])
src/fd/mod.rs:84
↓ 3 callers
Method
address
Return the stored physical address.
src/arch/x86/mm/paging.rs:114
↓ 3 callers
Function
allocate_aligned
(size: usize, alignment: usize)
src/arch/x86/mm/virtualmem.rs:51
↓ 3 callers
Function
check_path
Help function to check if the argument is an abolute path
src/fs/mod.rs:113
↓ 3 callers
Method
deallocate
(&mut self, address: T, size: usize)
src/mm/freelist.rs:75
↓ 3 callers
Function
do_exit
Terminate the current running task
src/scheduler/mod.rs:44
↓ 3 callers
Function
get_boot_stack
()
src/arch/x86/mm/mod.rs:76
↓ 3 callers
Function
get_io_interface
(fd: FileDescriptor)
src/scheduler/mod.rs:77
↓ 3 callers
Function
get_kernel_root_page_table
()
src/arch/x86/mm/paging.rs:756
↓ 3 callers
Method
is_user
(&self)
src/arch/x86/mm/paging.rs:132
↓ 3 callers
Method
mkdir
(&mut self, path: &String)
src/fs/vfs.rs:256
↓ 3 callers
Function
open
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 callers
Method
pop
Try to remove the first item in the list
src/mm/linked_list.rs:29
↓ 3 callers
Method
reschedule
(&mut self)
src/scheduler/scheduler.rs:296
↓ 3 callers
Function
shutdown
(error_code: i32)
src/arch/x86/kernel/processor.rs:52
↓ 3 callers
Method
top
(&self)
src/arch/x86/mm/mod.rs:46
↓ 2 callers
Function
allocate
(size: usize)
src/arch/x86/mm/virtualmem.rs:32
↓ 2 callers
Method
bottom
(&self)
src/arch/x86/mm/mod.rs:56
↓ 2 callers
Method
cleanup
(&mut self)
src/scheduler/scheduler.rs:85
↓ 2 callers
Method
clear_row
(&mut self, row: usize)
src/arch/x86/kernel/vga.rs:68
↓ 2 callers
Method
deref_mut
(&mut self)
src/synch/mutex.rs:124
↓ 2 callers
Method
get
(&mut self, name: &String)
src/fs/vfs.rs:39
↓ 2 callers
Method
get_handle
(&self, opt: OpenOption)
src/fs/vfs.rs:188
↓ 2 callers
Method
get_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 callers
Method
interrupt_top
(&self)
src/arch/x86/mm/mod.rs:60
↓ 2 callers
Function
irq_enable
Enable Interrupts
src/arch/x86/kernel/irq.rs:18
↓ 2 callers
Method
iter
Return an iterator over the items in the list
src/mm/linked_list.rs:42
↓ 2 callers
Method
iter_mut
Return an mutable iterator over the items in the list
src/mm/linked_list.rs:50
↓ 2 callers
Method
lock
(&self)
src/synch/spinlock.rs:24
↓ 2 callers
Method
lsdir
(&self)
src/fs/vfs.rs:269
↓ 2 callers
Method
map_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 callers
Function
mb
()
src/arch/x86/kernel/processor.rs:36
↓ 2 callers
Method
mount
Mound memory region as file
src/fs/vfs.rs:289
↓ 2 callers
Method
pop_from_queue
(&mut self, queue_index: usize)
src/scheduler/task.rs:100
↓ 2 callers
Function
reschedule
Trigger the scheduler to switch to the next available task
src/scheduler/mod.rs:34
↓ 2 callers
Method
schedule
(&mut self)
src/scheduler/scheduler.rs:223
↓ 2 callers
Function
spawn
Create a new kernel task
src/scheduler/mod.rs:29
↓ 2 callers
Method
unlock
(&self)
src/synch/spinlock.rs:47
↓ 2 callers
Method
unlock_fair
(&self)
src/synch/spinlock.rs:60
↓ 2 callers
Function
wait_some_time
()
src/arch/x86/kernel/pit.rs:9
↓ 2 callers
Method
write
(&self, buf: &[u8])
src/fs/initrd.rs:144
↓ 2 callers
Method
write_byte
(&mut self, byte: u8)
src/arch/x86/kernel/vga.rs:77
↓ 1 callers
Function
__jump_to_user_land
(ds: usize, stack: usize, cs: usize, entry: usize)
src/arch/x86/kernel/mod.rs:27
↓ 1 callers
Method
abort
(&mut self)
src/scheduler/scheduler.rs:110
↓ 1 callers
Function
block_current_task
()
src/scheduler/mod.rs:69
↓ 1 callers
Method
block_current_task
(&mut self)
src/scheduler/scheduler.rs:128
↓ 1 callers
Function
bss_init
()
src/arch/x86/kernel/start.rs:16
↓ 1 callers
Method
create_stack_frame
(&mut self, func: extern "C" fn())
src/arch/x86/kernel/task.rs:89
↓ 1 callers
Function
create_usr_pgd
just an workaround to explaine the difference between kernel and user space
src/arch/x86/mm/paging.rs:786
↓ 1 callers
Function
drop_user_space
()
src/arch/x86/mm/paging.rs:778
↓ 1 callers
Method
drop_user_space
(&mut self)
src/arch/x86/mm/paging.rs:446
↓ 1 callers
Function
entry
()
src/arch/x86/kernel/start.rs:25
↓ 1 callers
Method
exit
(&mut self)
src/scheduler/scheduler.rs:92
↓ 1 callers
Method
flush_from_tlb
(&self)
src/arch/x86/mm/paging.rs:244
↓ 1 callers
Function
fstat
(fd: FileDescriptor)
src/fd/mod.rs:94
↓ 1 callers
Method
fstat
(&self)
src/fd/mod.rs:53
↓ 1 callers
Function
get_current_interrupt_stack
()
src/scheduler/mod.rs:55
↓ 1 callers
Method
get_current_interrupt_stack
(&self)
src/scheduler/scheduler.rs:211
↓ 1 callers
Method
get_current_taskid
(&self)
src/scheduler/scheduler.rs:205
↓ 1 callers
Method
get_io_interface
( &self, fd: FileDescriptor, )
src/scheduler/scheduler.rs:190
↓ 1 callers
Method
get_mut
(&mut self, name: &String)
src/fs/vfs.rs:32
↓ 1 callers
Function
get_root_page_table
()
src/scheduler/mod.rs:59
↓ 1 callers
Method
get_root_page_table
(&self)
src/scheduler/scheduler.rs:215
↓ 1 callers
Method
get_tid
(&self)
src/scheduler/scheduler.rs:49
↓ 1 callers
Function
halt
()
src/arch/x86/kernel/processor.rs:44
↓ 1 callers
Function
init
()
src/lib.rs:57
↓ 1 callers
Function
init
()
src/arch/x86/kernel/vga.rs:137
↓ 1 callers
Method
init
(&mut self)
src/arch/x86/kernel/vga.rs:51
↓ 1 callers
Method
init
Initialize buddy system. `start` specifies the start address of the heap, while `len` specifies# the heap size.
src/mm/buddy.rs:34
↓ 1 callers
Function
insert_io_interface
Insert IoInterface and create a new FileDescriptor
src/scheduler/mod.rs:84
↓ 1 callers
Method
insert_io_interface
( &mut self, io_interface: Arc<dyn IoInterface>, )
src/scheduler/scheduler.rs:156
↓ 1 callers
Method
interrupt_top
(&self)
src/scheduler/task.rs:170
↓ 1 callers
Function
irq_disable
Disable Interrupts
src/arch/x86/kernel/irq.rs:23
↓ 1 callers
Function
irq_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 callers
Function
is_irq_enabled
Determines, if the interrupt flags (IF) is set
src/arch/x86/kernel/irq.rs:28
↓ 1 callers
Function
jump_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 callers
Function
load_application
(path: &String)
src/arch/x86/mod.rs:21
↓ 1 callers
Method
load_idt
(&mut self)
src/arch/x86/kernel/irq.rs:472
next →
1–100 of 288, ranked by callers