Move sys/test to Yellowstone init process.

This commit is contained in:
Drew Galbraith 2023-06-07 11:18:35 -07:00
parent 6f81520918
commit 7c9d1075eb
8 changed files with 26 additions and 19 deletions

View File

@ -21,7 +21,7 @@ set(QEMU_CMD qemu-system-x86_64 -d guest_errors -m 1G -serial stdio -hda disk.im
add_custom_command(
OUTPUT disk.img
COMMAND sudo sh ../scripts/build_image.sh disk.img
DEPENDS zion test test2
DEPENDS zion yellowstone test2
USES_TERMINAL
)

View File

@ -37,7 +37,7 @@ cp /usr/share/limine/limine.sys efi/
cp ../zion/boot/limine.cfg efi/
cp zion/zion efi/
mkdir -p efi/sys
cp sys/test efi/sys/test
cp sys/yellowstone/yellowstone efi/sys/yellowstone
cp sys/test2 efi/sys/test2
chown drew:drew $1

View File

@ -1,17 +1,6 @@
set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "")
add_executable(test
test.cpp
)
target_link_libraries(test
mammoth_lib)
set_target_properties(test
PROPERTIES
COMPILE_FLAGS "${CMAKE_CXX_FLAGS} ${BASE_COMPILE_FLAGS}"
LINK_FLAGS "${CMAKE_EXE_LINK_FLAGS} ${BASE_LINK_FLAGS}"
)
add_subdirectory(yellowstone)
add_executable(test2
test2.cpp)

5
sys/README.md Normal file
View File

@ -0,0 +1,5 @@
# System Processes
Current Processes;
- **yellowstone**: System Initialization

View File

@ -0,0 +1,12 @@
add_executable(yellowstone
yellowstone.cpp)
target_link_libraries(yellowstone
cxx
mammoth_lib
)
set_target_properties(yellowstone PROPERTIES
COMPILE_FLAGS "${CMAKE_CXX_FLAGS} ${BASE_COMPILE_FLAGS}"
LINK_FLAGS "${CMAKE_EXE_LINK_FLAGS} ${BASE_LINK_FLAGS}"
)

View File

@ -2,11 +2,12 @@
#include <mammoth/process.h>
#include <zcall.h>
int main() {
dbgln("Testing");
uint64_t main() {
dbgln("Yellowstone Initializing.");
uint64_t vaddr;
check(ZAddressSpaceMap(Z_INIT_VMAS_SELF, 0, Z_INIT_BOOT_VMMO, &vaddr));
check(SpawnProcessFromElfRegion(vaddr));
dbgln("Return");
dbgln("Yellowstone Finished Successfully.");
return 0;
}

View File

@ -6,5 +6,5 @@ TIMEOUT=0
PROTOCOL=limine
KERNEL_PATH=boot:///zion
MODULE_PATH=boot:///sys/test
MODULE_PATH=boot:///sys/yellowstone
MODULE_PATH=boot:///sys/test2

View File

@ -107,7 +107,7 @@ const limine_file& GetInitProgram(const char* path) {
void LoadInitProgram() {
DumpModules();
const limine_file& init_prog = GetInitProgram("/sys/test");
const limine_file& init_prog = GetInitProgram("/sys/yellowstone");
RefPtr<Process> proc = Process::Create();
gProcMan->InsertProcess(proc);