cffile / matrix Goto Github PK
View Code? Open in Web Editor NEWThis project forked from ted-chang/matrix
Matrix, the name originated from the film "The Matrix", is a personal operating system project.
License: GNU General Public License v2.0
This project forked from ted-chang/matrix
Matrix, the name originated from the film "The Matrix", is a personal operating system project.
License: GNU General Public License v2.0
How to build? Clone the source repo and install the dependency tool chain. $ cd matrix && make To get available make options, run the following command. $ make help How to test matrix? I only tried it with bochs 2.4.6 and boot it with grub installed. You need to install grub and boot from the kernel file. Also a initrd is needed. You can generate the initrd with the make_initrd tool. To build make_initrd tool, just build the source file in tools directory. What architecture does matrix support now? At this moment matrix only support the x86 architecture. How to debug matrix? When matrix booting it will config the serial port and write logs to the serial port. If you are debugging with physical machine, you can use a serial line. If you are debugging with bochs, you can redirect the output to a file. How to create a bochs vm using the image? Create a file bochsrc.bxrc and write the configuration into the file. You can refer to the documents on bochs site. Also there is a bochs configuration file in tools directory. *** Organization of the Matrix sources The sdk\ directory contains a number of shared user mode startup code for applications. sdk\include contains all the headers shared between user mode and kernel mode components. sdk\libc contains the standard C library code that don't need runtime environments(i.e. no memory related stuff). The uspace\ directory contains code for all the applications The drivers\ directory contains all the drivers for Matrix The kernel\ directory contains the Matrix kernel sources. The primary Matrix source components are organized as follows: hal\ - Hardware abstract layer mm\ - Memory management stuff proc\ - Process, thread management and also scheduler sys\ - System call, timer, utility, etc fs\ - File System related stuff loader\ - ELF loader, load the ELF file to process' address space time\ - Time management code libc\ - Place holder, actual code is in sdk\libc directory dbgk\ - Kernel debugger support include\- Kernel-only include files rtl\ - Kernel run-time support init\ - Kernel startup code ***
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.