wip: IPC and Runtime

This commit is contained in:
karina
2026-05-03 21:57:20 +04:00
parent 5f343c991b
commit 39b2af7626
25 changed files with 371 additions and 66 deletions
+3 -31
View File
@@ -4,44 +4,16 @@
cmake_minimum_required(VERSION 3.20)
project(ksOS_init LANGUAGES C ASM)
include("${CMAKE_CURRENT_SOURCE_DIR}/../../Common/ksOS_SDK.cmake")
file(GLOB_RECURSE INIT_SOURCES CMAKE_CONFIGURE_DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/Source/*.S
${CMAKE_CURRENT_SOURCE_DIR}/Source/*.c
)
add_executable(init ${INIT_SOURCES})
add_ksos_executable(Init ${INIT_SOURCES})
target_include_directories(init PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/Source
${CMAKE_CURRENT_SOURCE_DIR}/../../Common
)
target_compile_options(init PRIVATE
$<$<COMPILE_LANGUAGE:C>:
-std=c23
-fno-stack-protector
-fno-builtin
-Wall
-Wextra
>
-ffreestanding
-g
-mgeneral-regs-only
)
target_link_options(init PRIVATE
-nostdlib
-static
-no-pie
-T "${CMAKE_CURRENT_SOURCE_DIR}/../../Common/linker.ld"
-Ttext=0x400000
-e _start
-z max-page-size=0x1000
--no-dynamic-linker
)
set_target_properties(init PROPERTIES
set_target_properties(Init PROPERTIES
OUTPUT_NAME "Init"
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
)
-21
View File
@@ -1,21 +0,0 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2026 0xKSor
.section .text.entry, "ax"
.global _start
_start:
// Set up stack pointer (8KB stack)
adrp x0, stack_top
add sp, x0, :lo12:stack_top
// Jump to C main
bl main
// If main returns, loop forever
b .
.section .bss, "aw", @nobits
.align 12 // 4KB alignment
stack_bottom:
.space 8192 // 8KB stack
stack_top:
+5 -5
View File
@@ -1,9 +1,9 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2026 0xKSor
void main(void) {
__asm__ volatile(
"svc #0\n"
"b .\n"
);
#include <ksOS/Syscall.h>
int main(void) {
SysSend(1, 0xa0a0a0a0a);
while (1) {}
}