toku-sa-n / ramen Goto Github PK
View Code? Open in Web Editor NEWA toy OS written in Rust supporting xHCI.
License: GNU General Public License v3.0
A toy OS written in Rust supporting xHCI.
License: GNU General Public License v3.0
Use lateout
nomem
etc.
This function should just initialize.
CR2 register contains the physical address of PML4, not the virtual one.
Dereferencing drops the old value. If the memory are not initialized, undefined behavior may happen.
Running cargo build
unconditionally seems the best way to solve.
For exmple, Size
.
Not to write any additional lines in Makefile
.
This function should be separated into two: actual putting data, and return bool
value which represents whether three bytes data are sent or not.
Line 28 in 9df0f82
The content of this module can be moved to main.rs
.
Dependabot couldn't find a Cargo.toml for this project.
Dependabot requires a Cargo.toml to evaluate your project's current Rust dependencies. It had expected to find one at the path: /Cargo.toml
.
If this isn't a Rust project, or if it is a library, you may wish to disable updates for it from within Dependabot.
Set 511st index of PML4.
Line 40 in 32fb68b
All predefined addresses and sizes should be in this file.
Usually SystemTable
is not needed. Rather, BootServices
is used.
asm
module should contain only general-purpose functions like in
, out
.
This may be possible using subcrate, then add a dependency.
These functions should be refactored to remove duplications.
Line 178 in c977a93
Check descriptor.page_count > 0
.
Dependabot couldn't find a Cargo.toml for this project.
Dependabot requires a Cargo.toml to evaluate your project's current Rust dependencies. It had expected to find one at the path: /,kernel/,bootx64/,common_items/Cargo.toml
.
If this isn't a Rust project, or if it is a library, you may wish to disable updates for it from within Dependabot.
There seems no way to get the number of bytes .bss
section consumes. Also, there are lots of useful tools to analyze the ELF binary.
Conversion table can be seen as a large slice whose element's type is usize
.
You no longer need cargo-xbuild
. Also, you can run RamenOS without installing it on USB memory. Instead you can boot on QEMU. Add an instruction to run RamenOS on QEMU.
Lines 21 to 28 in 61a49fc
Remove function callings.
Branch if accessing to USB_DEVICE
needs sudo
.
This is reminiscent of Haribote OS, isn't it?
Currently if some files in bootx64
directory are changed, make
will not recompile. This will cause overlooking some bugs.
Rename this to lidt
.
Currently the type of Device.data
is u32
. The possible values are 0, 1, 2, or 3. Define Enum value to limit the possible values.
If OS panics between after exiting it and before jumping to the kernel, no error messages will be printed.
At least separate this file into two: getting memory map and initializing paging.
Caller function should come before callee functions.
Use type
.
Equivalent as make release && make run
Lines 37 to 53 in c913ced
Is the order to call these functions important? What do the numbers mean?
Our bootx64 doesn't handle the other files than the kernel.
This is not about "memory map", so this should be renamed.
To detect invalid memory accesses easily.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.