Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/bendudson/EuraliOS
/ functions
Functions
458 in github.com/bendudson/EuraliOS
⨍
Functions
458
◇
Types & classes
75
↓ 3 callers
Method
take_memory_chunk
Remove a memory chunk from this thread's page table which contains the given virtual address. Note: Doesn't free the frames or pagetables
kernel/src/process.rs:261
↓ 3 callers
Method
to_CommHandle
Convert to CommHandle EuraliOS only
euralios_std/src/fs.rs:239
↓ 3 callers
Method
to_str
(&self)
euralios_std/src/ffi.rs:187
↓ 2 callers
Function
active_level_1_table_containing
( addr: VirtAddr )
kernel/src/memory.rs:788
↓ 2 callers
Function
active_level_4_table
This should only be called from the init function because each call will result in a mutable reference
kernel/src/memory.rs:90
↓ 2 callers
Function
active_pagetable_ptr
()
kernel/src/memory.rs:229
↓ 2 callers
Function
allocate_pages
(level_4_table: *mut PageTable, start_addr: VirtAddr, size: u64,
kernel/src/memory.rs:273
↓ 2 callers
Function
allocate_pages_mapper
Allocate pages in the specified page table starting at the page containing virtual address \p start_addr and large enough to contain \p size bytes. \
kernel/src/memory.rs:243
↓ 2 callers
Function
allocate_user_stack
Allocate memory for a thread's user stack Uses 8 pages per thread: 7 for user stack, one guard page # Returns (user_stack_start, user_stack_end)
kernel/src/memory.rs:712
↓ 2 callers
Function
as_str
()
euralios_std/src/env.rs:15
↓ 2 callers
Method
as_u8_slice
The following (private!) function reveals the byte encoding used for OsStr.
euralios_std/src/path.rs:311
↓ 2 callers
Function
await_interrupt
Store a thread, to be scheduled when an interrupt occurs
kernel/src/interrupts.rs:324
↓ 2 callers
Function
create_user_ondemand_pages
Create user-accessible pages, which are allocated on demand ie when written to. One frame is allocated, and made writable through the first page in t
kernel/src/memory.rs:325
↓ 2 callers
Function
display
(file: &File)
edit/src/main.rs:204
↓ 2 callers
Method
file_name
Return the bare file name of this directory entry without any other leading path component.
euralios_std/src/fs.rs:373
↓ 2 callers
Method
find
(&self, vendor_id: u16, device_id:u16)
pci/src/main.rs:73
↓ 2 callers
Function
find_available_page_chunk
Find the starting address of an available chunk of pages Returns the index and virtual address of the start of the chunk or None if no chunks availab
kernel/src/memory.rs:492
↓ 2 callers
Method
finished
(&self)
euralios_std/src/path.rs:713
↓ 2 callers
Function
free_pages_rec
Recursively free all pages and page tables, including the page table at the given table_physaddr.
kernel/src/memory.rs:649
↓ 2 callers
Function
get_kernel_segments
()
kernel/src/gdt.rs:130
↓ 2 callers
Function
get_user_segments
()
kernel/src/gdt.rs:134
↓ 2 callers
Method
give_memory_chunk
Add a memory chunk to this thread's page table
kernel/src/process.rs:272
↓ 2 callers
Function
handle_file_readwrite
Serve messages received from a communication channel reading and writing data from a file
euralios_std/src/server.rs:194
↓ 2 callers
Method
header
(&self)
tcp/src/dns.rs:107
↓ 2 callers
Method
id
(&self)
tcp/src/dns.rs:103
↓ 2 callers
Method
init
Initialise a bitmap allocator This function is unsafe because the caller must guarantee that the memory map and physical memory offset is correct.
kernel/src/memory/frame_allocator.rs:103
↓ 2 callers
Function
inportw
Read a word (16 bits) from a port
euralios_std/src/ports.rs:47
↓ 2 callers
Method
is_absolute
Returns true if the Path is absolute, i.e., if it is independent of the current directory.
euralios_std/src/path.rs:350
↓ 2 callers
Method
is_dir
Returns true if this metadata is for a directory. The result is mutually exclusive to the result of is_file
euralios_std/src/fs.rs:340
↓ 2 callers
Function
map_consecutive_pages
Map a consecutive set of pages to a consecutive set of frames level_4_physaddr The physical address of the L4 pagetable start_page First page i
kernel/src/memory.rs:388
↓ 2 callers
Method
memory
(self)
euralios_std/src/message.rs:25
↓ 2 callers
Method
memory_chunk
Get the physical address and page table level of the memory chunk containing the given virtual address
kernel/src/process.rs:247
↓ 2 callers
Method
new_line
(&mut self)
kernel/src/vga_buffer.rs:79
↓ 2 callers
Function
new_memory_chunk
Create a new memory chunk num_pages - Size of the memory chunk max_physaddr - If Some() then consecutive frames are allocated which are all below
kernel/src/process.rs:780
↓ 2 callers
Function
new_user_thread
Create a new user thread # Arguments `bin` - ELF binary containing the program. Note: This must be accessible in the kernel page tables `params`
kernel/src/process.rs:463
↓ 2 callers
Method
next
(&mut self)
euralios_std/src/fs.rs:392
↓ 2 callers
Method
next
(&mut self)
euralios_std/src/path.rs:828
↓ 2 callers
Method
next_back
(&mut self)
euralios_std/src/path.rs:861
↓ 2 callers
Function
nonzero_bit_index
Return the index of a non-zero bit Uses the BSF instruction: <https://www.felixcloutier.com/x86/bsf> Assumes that at least one bit is not zero
kernel/src/memory/frame_allocator.rs:21
↓ 2 callers
Function
open
Open a file or directory This will create files but not directories
euralios_std/src/server.rs:64
↓ 2 callers
Method
parse_next_component
parse a component from the left, saying how many bytes to consume to remove the component
euralios_std/src/path.rs:779
↓ 2 callers
Method
parse_next_component_back
parse a component from the right, saying how many bytes to consume to remove the component
euralios_std/src/path.rs:790
↓ 2 callers
Method
parse_single_component
parse a given byte sequence into the corresponding path component
euralios_std/src/path.rs:766
↓ 2 callers
Method
query
Query a file handle EuraliOS only
euralios_std/src/fs.rs:246
↓ 2 callers
Method
rcall
Remote call. Send a message and wait for a reply EuraliOS only
euralios_std/src/fs.rs:278
↓ 2 callers
Function
read_dir
( path: P )
euralios_std/src/fs.rs:400
↓ 2 callers
Method
read_line
reads a line of input, appending it to the specified buffer. API from <https://doc.rust-lang.org/stable/std/io/trait.BufRead.html#method.read_line>:
euralios_std/src/io.rs:93
↓ 2 callers
Method
return_frame
Put a frame back into the bitmap Input is the frame number returned by fetch_frame, not a physical address
kernel/src/memory/frame_allocator.rs:254
↓ 2 callers
Method
send
Send a message to a Rendezvous. Blocking or non-blocking If a `Box<Thread>` is provided then it is suspended until the message is received i.e. block
kernel/src/rendezvous.rs:38
↓ 2 callers
Function
stdin
Constructs a new handle to the standard input of the current process. Intended to have the same interface as the Rust std::io <https://doc.rust-lang.
euralios_std/src/io.rs:67
↓ 2 callers
Function
sys_send
This handles both syscall_send and syscall_sendreceive
kernel/src/syscalls.rs:370
↓ 2 callers
Function
thread_exit
Exit the current thread. Never returns.
euralios_std/src/syscalls.rs:215
↓ 2 callers
Function
time_stamp_counter
Read the processor's Time Stamp Counter uses RDTSC <https://www.felixcloutier.com/x86/rdtsc>
kernel/src/time.rs:21
↓ 2 callers
Method
to_path_buf
(&self)
euralios_std/src/path.rs:339
↓ 2 callers
Method
to_values
Convert a Message to values which can be put into registers for a send or send_receive syscall. This should be the inverse of from_values, and consis
euralios_std/src/message.rs:77
↓ 2 callers
Method
truncate
Sets the option for truncating a previous file. If a file is successfully opened with this option set it will truncate the file to 0 length if it alr
euralios_std/src/fs.rs:139
↓ 2 callers
Function
u8_slice_as_os_str
(s: &[u8])
euralios_std/src/path.rs:21
↓ 2 callers
Method
umount
Remove a mount point from the VFS
kernel/src/vfs.rs:43
↓ 2 callers
Method
write
Sets the option for write access. This option, when true, will indicate that the file should be `write`-able if opened. If the file already exists,
euralios_std/src/fs.rs:76
↓ 2 callers
Method
write_byte
(&mut self, byte: u8)
kernel/src/vga_buffer.rs:58
↓ 2 callers
Method
write_string
Write a string to the buffer and (if active) video memory Interprets a subset of the ANSI escape codes <https://en.wikipedia.org/wiki/ANSI_escape_cod
vga_driver/src/main.rs:142
↓ 1 callers
Method
_join
(&self, path: &Path)
euralios_std/src/path.rs:498
↓ 1 callers
Function
_open
(path: &str, flags: u64)
euralios_std/src/syscalls.rs:352
↓ 1 callers
Method
_open
(&self, path: &Path)
euralios_std/src/fs.rs:171
↓ 1 callers
Method
_push
(&mut self, path: &Path)
euralios_std/src/path.rs:205
↓ 1 callers
Method
activate
Write to video memory
vga_driver/src/main.rs:90
↓ 1 callers
Method
add_handle
Add a Rendezvous to this process, returning the handle
kernel/src/process.rs:93
↓ 1 callers
Function
add_server
Add a DNS server which can be used to resolve hostnames
tcp/src/dns.rs:142
↓ 1 callers
Function
add_to_user_table
( mapper: &mut impl Mapper<Size4KiB>, frame_allocator: &mut impl FrameAllocator<Size4KiB>, )
kernel/src/memory/kernel_info.rs:57
↓ 1 callers
Method
allocate_consecutive_frames
Allocate a set of consecutive frames
kernel/src/memory/frame_allocator.rs:371
↓ 1 callers
Function
allocate_missing_ondemand_frame
Allocate a read-only page which user code has attempted to write to. This is called by the page fault handler
kernel/src/memory.rs:808
↓ 1 callers
Function
args
()
euralios_std/src/env.rs:8
↓ 1 callers
Method
as_u64
Get the virtual address of the start of the memory region
euralios_std/src/syscalls.rs:107
↓ 1 callers
Method
capacity
(&self)
euralios_std/src/ffi.rs:105
↓ 1 callers
Method
capacity
(&self)
euralios_std/src/path.rs:147
↓ 1 callers
Method
clear
Delete contents
euralios_std/src/server.rs:29
↓ 1 callers
Method
clear_row
(&mut self, row: usize)
kernel/src/vga_buffer.rs:90
↓ 1 callers
Method
close
Close a Rendezvous. If a thread was waiting then it is returned and should be scheduled. An error SYSCALL_ERROR_CLOSED will be returned to the waitin
kernel/src/rendezvous.rs:198
↓ 1 callers
Function
configure
DHCP configuration on given interface Based on <https://github.com/vinc/moros/blob/trunk/src/usr/dhcp.rs>
tcp/src/dhcp.rs:17
↓ 1 callers
Method
consecutive_frames
Allocate a consecutive set of frames num_frames The number of frames required max_address The maximum physical address in the set e.g. for 32-bi
kernel/src/memory/frame_allocator.rs:302
↓ 1 callers
Method
copy
Make a copy of the internal state
kernel/src/vfs.rs:106
↓ 1 callers
Function
copy_pages_rec
(physical_memory_offset: VirtAddr, from_table: &PageTable, to_table: &mut PageTable,
kernel/src/memory.rs:136
↓ 1 callers
Function
copy_pagetables
Copy a set of pagetables
kernel/src/memory.rs:131
↓ 1 callers
Function
create_consecutive_pages
Allocates a consecutive set of frames start_addr Starting virtual address in page table num_frames Number of consecutive frames max_physadd
kernel/src/memory.rs:434
↓ 1 callers
Function
create_new_user_pagetable
Creates a PageTable containing only kernel pages - Copies the kernel pagetables into a new set of tables - Adds the KernelInfo read-only page Return
kernel/src/memory.rs:183
↓ 1 callers
Function
create_physical_range_pages
Create a mapping to a specific range of physical memory Doesn't do any frame allocation, so assumes that it's ok to use the memory. Used for mapping
kernel/src/memory.rs:464
↓ 1 callers
Method
deactivate
Stop writing to video memory Further updates are only made to the memory buffer, and then copied to video memory when `activate()` is called.
vga_driver/src/main.rs:112
↓ 1 callers
Method
deref
(&self)
euralios_std/src/path.rs:259
↓ 1 callers
Function
display_text
Display gophermap or text Returns a Command, which may be a Link containing a reference to part of the input data.
gopher/src/main.rs:62
↓ 1 callers
Function
exec_path
(current_directory: &Path, path: &Path, args: Vec<&str>)
shell/src/main.rs:16
↓ 1 callers
Function
exec_path
(path: &Path, vfs: VFS)
login/src/main.rs:16
↓ 1 callers
Function
exit_current_thread
This function is called via syscall (and maybe other mechanism) to remove the current thread.
kernel/src/process.rs:683
↓ 1 callers
Function
fork_current_thread
Fork the current user thread
kernel/src/process.rs:634
↓ 1 callers
Function
free_memory_chunk
Free a memory chunk previously allocated with new_memory_chunk
kernel/src/process.rs:864
↓ 1 callers
Function
free_page_chunk
Free a memory chunk, releasing the pages back to the frame allocator
kernel/src/memory.rs:530
↓ 1 callers
Function
free_user_pagetables
Free all user-accessible pages and the page table frames Note: Must not be called to free the current page tables Switch to kernel pagetable before c
kernel/src/memory.rs:693
↓ 1 callers
Function
free_user_stack
Free frames used for a thread stack given virtual address
kernel/src/memory.rs:835
↓ 1 callers
Function
get_args
()
euralios_std/src/lib.rs:51
↓ 1 callers
Method
get_device
Return the Device which is at this PCI bus location May return None if there is no device
pci/src/device.rs:53
↓ 1 callers
Method
get_dir
(&self, _name: &str)
pci/src/main.rs:31
← previous
next →
101–200 of 458, ranked by callers