Compare commits
102 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 21728285a6 | |||
| 636f8c68c5 | |||
| 50569ed1c8 | |||
| 81ca704adb | |||
| a4091ca57b | |||
| 57bd59bb43 | |||
| f687b89c74 | |||
| 0347054fae | |||
| 2df2f34f22 | |||
| 9bb19e22be | |||
| 2644a07f66 | |||
| c8db92b7b7 | |||
| 082ea79648 | |||
| 272a246e29 | |||
| 67223d0edf | |||
| e4e740c1c5 | |||
| d213be2bcf | |||
| 2ab2dd8a11 | |||
| f4f57e0750 | |||
| 548feeaf7d | |||
| 761abc0172 | |||
| 61024ac3f3 | |||
| 9ee6421e1b | |||
| 79a9897a61 | |||
| 0b1bc2844b | |||
| f538920b24 | |||
| 152f141d5a | |||
| 61824151fb | |||
| 9950584c12 | |||
| 113e902a62 | |||
| 91e1a116c7 | |||
| e67aced2c0 | |||
| 179a301c40 | |||
| fb1a6fcf15 | |||
| 9bb52a8494 | |||
| bd864fe384 | |||
| 3bf6119030 | |||
| dba41a3719 | |||
| b149807ccc | |||
| 43c5bbaaff | |||
| 9f0d8eca0d | |||
| 9de28df51a | |||
| 58ceead501 | |||
| 1a6a590eee | |||
| cf8781398d | |||
| 2d8350f732 | |||
| b79f768a0f | |||
| 45229810be | |||
| 670320df13 | |||
| f088eb4058 | |||
| 7b6076b612 | |||
| d213276817 | |||
| ed7454f1e0 | |||
| 806664f61c | |||
| 8852d09693 | |||
| 8262982e87 | |||
| fbff702922 | |||
| cd60f1602e | |||
| 354470b85b | |||
| 43054529d5 | |||
| fe4c4e337e | |||
| 63b8d9420a | |||
| 7b54ff8d2a | |||
| 65393843a5 | |||
| afa3d4fb66 | |||
| f124be1cf7 | |||
| 88b1846a43 | |||
| 8e1696d701 | |||
| ebd07576fa | |||
| ce99aff26b | |||
| 5b4c3bb0f4 | |||
| 53d1e8ad68 | |||
| ed50926b46 | |||
| bc0c921316 | |||
| ee2f95e51d | |||
| 189f2ceb77 | |||
| b617fccee4 | |||
| 14474130ad | |||
| 18504170ec | |||
| 404f4c20f0 | |||
| dea54c7dae | |||
| 44b1acf33c | |||
| 4d4504486d | |||
| f7e53f9b00 | |||
| beacbde52e | |||
| cad4804a95 | |||
| e2e608b073 | |||
| bb1bca458e | |||
| b489df26ba | |||
| 1832c77fdb | |||
| ce98a0d3de | |||
| 89e6d75627 | |||
| 4c6cbc3360 | |||
| e31e40ba2e | |||
| c3c2ba824e | |||
| 015768793b | |||
| ce9d95e4e8 | |||
| c0254bca6d | |||
| 30e01ba560 | |||
| af79958f1a | |||
| eca55dfed8 | |||
| 0b75cd9c2a |
+57
-42
@@ -1,14 +1,13 @@
|
||||
# =============================================================================
|
||||
# PROJECT SETUP
|
||||
# =============================================================================
|
||||
|
||||
# Set the minimum required version of cmake.
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
|
||||
# Initialize the project.
|
||||
project(mentos C ASM)
|
||||
|
||||
# =============================================================================
|
||||
# BUILD TYPE (Debug/Release)
|
||||
# =============================================================================
|
||||
|
||||
# Set the default build type to Debug.
|
||||
if(NOT CMAKE_BUILD_TYPE)
|
||||
message(STATUS "Setting build type to 'Debug' as none was specified.")
|
||||
@@ -16,12 +15,7 @@ if(NOT CMAKE_BUILD_TYPE)
|
||||
endif()
|
||||
|
||||
# =============================================================================
|
||||
# DOCUMENTATION
|
||||
# =============================================================================
|
||||
add_subdirectory(doc)
|
||||
|
||||
# =============================================================================
|
||||
# OS-SPECIFIC COMPILERS
|
||||
# OS-SPECIFIC COMPILERS SETUP
|
||||
# =============================================================================
|
||||
|
||||
# Add operating system specific option.
|
||||
@@ -61,8 +55,10 @@ else()
|
||||
set(CMAKE_LINKER ld)
|
||||
endif()
|
||||
|
||||
# Enable the assembly language.
|
||||
enable_language(ASM)
|
||||
# =============================================================================
|
||||
# ASSEMBLY COMPILER
|
||||
# =============================================================================
|
||||
|
||||
# Find the NASM compiler.
|
||||
find_program(ASM_COMPILER NAMES nasm HINTS /usr/bin/ /usr/local/bin/)
|
||||
# Mark the variable ASM_COMPILER as advanced.
|
||||
@@ -71,9 +67,19 @@ mark_as_advanced(ASM_COMPILER)
|
||||
if(NOT ASM_COMPILER)
|
||||
message(FATAL_ERROR "ASM compiler not found!")
|
||||
endif(NOT ASM_COMPILER)
|
||||
|
||||
# Set the asm compiler.
|
||||
set(CMAKE_ASM_COMPILER ${ASM_COMPILER})
|
||||
# Set the assembly compiler flags.
|
||||
set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} -m32")
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
set(CMAKE_ASM_COMPILE_OBJECT "<CMAKE_ASM_COMPILER> -f elf -g -O0 -F dwarf -o <OBJECT> <SOURCE>")
|
||||
else()
|
||||
set(CMAKE_ASM_COMPILE_OBJECT "<CMAKE_ASM_COMPILER> -f elf -g -O3 -o <OBJECT> <SOURCE>")
|
||||
endif()
|
||||
|
||||
# =============================================================================
|
||||
# GLOBAL COMPILATION FLAGS
|
||||
# =============================================================================
|
||||
|
||||
# Warning flags.
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror")
|
||||
@@ -81,12 +87,14 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wpedantic")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pedantic-errors")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wshadow")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99")
|
||||
|
||||
# Disable some specific warnings.
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-function")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-variable")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unknown-pragmas")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-missing-braces")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-command-line-argument")
|
||||
|
||||
# Set the compiler options.
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -static")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -nostdlib")
|
||||
@@ -97,10 +105,11 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-pic")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fomit-frame-pointer")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -march=i686")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffreestanding")
|
||||
|
||||
if(CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 10)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fcommon")
|
||||
endif()
|
||||
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g3")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ggdb")
|
||||
@@ -109,8 +118,11 @@ elseif(CMAKE_BUILD_TYPE STREQUAL "Release")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3")
|
||||
endif(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
|
||||
# Set the assembly compiler flags.
|
||||
set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} -m32")
|
||||
|
||||
# =============================================================================
|
||||
# COMPILATION
|
||||
# SUB-DIRECTORIES SETUP
|
||||
# =============================================================================
|
||||
|
||||
# Add the sub-directories.
|
||||
@@ -118,6 +130,7 @@ add_subdirectory(programs)
|
||||
add_subdirectory(programs/tests)
|
||||
add_subdirectory(mentos)
|
||||
add_subdirectory(libc)
|
||||
add_subdirectory(doc)
|
||||
|
||||
# =============================================================================
|
||||
# FILESYSTEM
|
||||
@@ -136,7 +149,7 @@ add_custom_target(filesystem
|
||||
COMMAND echo '============================================================================='
|
||||
COMMAND echo 'Done!'
|
||||
COMMAND echo '============================================================================='
|
||||
DEPENDS all_programs all_tests
|
||||
DEPENDS programs tests
|
||||
)
|
||||
|
||||
# =============================================================================
|
||||
@@ -179,12 +192,12 @@ set(EMULATOR_FLAGS ${EMULATOR_FLAGS} -drive file=${CMAKE_BINARY_DIR}/rootfs.img,
|
||||
# Booting with QEMU for fun
|
||||
# =============================================================================
|
||||
|
||||
# This first target runs the emualtor passing the kernel binary file.
|
||||
# This first target runs the emulator passing the kernel binary file.
|
||||
add_custom_target(
|
||||
qemu
|
||||
COMMAND test -e ${CMAKE_BINARY_DIR}/rootfs.img || ${CMAKE_COMMAND} -E cmake_echo_color --red "No filesystem file detected, you need to run: make filesystem"
|
||||
COMMAND ${EMULATOR} ${EMULATOR_FLAGS} -kernel ${CMAKE_BINARY_DIR}/mentos/kernel_bootloader.bin
|
||||
DEPENDS kernel_bootloader.bin
|
||||
COMMAND ${EMULATOR} ${EMULATOR_FLAGS} -kernel ${CMAKE_BINARY_DIR}/mentos/bootloader.bin
|
||||
DEPENDS bootloader.bin
|
||||
)
|
||||
|
||||
# =============================================================================
|
||||
@@ -195,19 +208,19 @@ add_custom_target(
|
||||
# executables.
|
||||
add_custom_target(
|
||||
gdbinit
|
||||
BYPRODUCTS ${CMAKE_BINARY_DIR}/.gdbinit
|
||||
COMMAND bash ${CMAKE_SOURCE_DIR}/scripts/get_text_address.sh ${CMAKE_BINARY_DIR}/mentos/kernel.bin > ${CMAKE_BINARY_DIR}/.gdbinit
|
||||
COMMAND bash ${CMAKE_SOURCE_DIR}/scripts/get_text_address.sh ${CMAKE_BINARY_DIR}/mentos/kernel_bootloader.bin >> ${CMAKE_BINARY_DIR}/.gdbinit
|
||||
COMMAND bash ${CMAKE_SOURCE_DIR}/scripts/get_text_address.sh ${CMAKE_BINARY_DIR}/programs/tests/test_* >> ${CMAKE_BINARY_DIR}/.gdbinit
|
||||
COMMAND bash ${CMAKE_SOURCE_DIR}/scripts/get_text_address.sh ${CMAKE_BINARY_DIR}/programs/prog_* >> ${CMAKE_BINARY_DIR}/.gdbinit
|
||||
COMMAND echo "break boot.c: boot_main" >> ${CMAKE_BINARY_DIR}/.gdbinit
|
||||
COMMAND echo "break kernel.c: kmain" >> ${CMAKE_BINARY_DIR}/.gdbinit
|
||||
BYPRODUCTS ${CMAKE_BINARY_DIR}/gdb.run
|
||||
# Create the generic gdb configuration.
|
||||
COMMAND echo "add-symbol-file ${CMAKE_BINARY_DIR}/mentos/kernel.bin" > ${CMAKE_BINARY_DIR}/gdb.run
|
||||
COMMAND echo "add-symbol-file ${CMAKE_BINARY_DIR}/mentos/bootloader.bin" >> ${CMAKE_BINARY_DIR}/gdb.run
|
||||
COMMAND find ${CMAKE_SOURCE_DIR}/files/bin -type f | xargs realpath | sed 's/^/add-symbol-file /' >> ${CMAKE_BINARY_DIR}/gdb.run
|
||||
COMMAND echo "break boot.c: boot_main" >> ${CMAKE_BINARY_DIR}/gdb.run
|
||||
COMMAND echo "break kernel.c: kmain" >> ${CMAKE_BINARY_DIR}/gdb.run
|
||||
# Create the GDB connection file.
|
||||
COMMAND echo "target remote localhost:1234" > ${CMAKE_BINARY_DIR}/gdb.run
|
||||
DEPENDS ${CMAKE_BINARY_DIR}/mentos/kernel_bootloader.bin
|
||||
COMMAND echo "target remote localhost:1234" >> ${CMAKE_BINARY_DIR}/gdb.run
|
||||
DEPENDS ${CMAKE_BINARY_DIR}/mentos/bootloader.bin
|
||||
DEPENDS ${CMAKE_BINARY_DIR}/mentos/kernel.bin
|
||||
DEPENDS all_programs
|
||||
DEPENDS all_tests
|
||||
DEPENDS programs
|
||||
DEPENDS tests
|
||||
DEPENDS libc
|
||||
)
|
||||
|
||||
@@ -217,15 +230,17 @@ add_custom_target(
|
||||
add_custom_target(
|
||||
qemu-gdb
|
||||
COMMAND test -e ${CMAKE_BINARY_DIR}/rootfs.img || ${CMAKE_COMMAND} -E cmake_echo_color --red "No filesystem file detected, you need to run: make filesystem"
|
||||
COMMAND echo "\n\n"
|
||||
COMMAND echo "Now, QEMU has loaded the kernel, and it is waiting that you\n"
|
||||
COMMAND echo "remotely connect to it. To start debugging, open a new shell\n"
|
||||
COMMAND echo "in THIS same folder, and just type :\n"
|
||||
COMMAND printf " cgdb -q -iex %q" "add-auto-load-safe-path ."
|
||||
COMMAND echo "\n\n"
|
||||
COMMAND ${EMULATOR} ${EMULATOR_FLAGS} -s -S -kernel ${CMAKE_BINARY_DIR}/mentos/kernel_bootloader.bin
|
||||
DEPENDS kernel_bootloader.bin
|
||||
DEPENDS .gdbinit
|
||||
COMMAND echo ""
|
||||
COMMAND echo "Now, QEMU has loaded the kernel, and it is waiting that you"
|
||||
COMMAND echo "remotely connect to it. To start debugging, open a new shell"
|
||||
COMMAND echo "in THIS same folder, and just type:"
|
||||
COMMAND echo " gdb --quiet --command=gdb.run"
|
||||
COMMAND echo "or if you want to use cgdb, type:"
|
||||
COMMAND echo " cgdb --quiet --command=gdb.run"
|
||||
COMMAND echo ""
|
||||
COMMAND ${EMULATOR} ${EMULATOR_FLAGS} -s -S -kernel ${CMAKE_BINARY_DIR}/mentos/bootloader.bin
|
||||
DEPENDS bootloader.bin
|
||||
DEPENDS gdbinit
|
||||
)
|
||||
|
||||
# =============================================================================
|
||||
@@ -236,9 +251,9 @@ add_custom_target(
|
||||
add_custom_target(
|
||||
cdrom.iso
|
||||
COMMAND cp -rf ${CMAKE_SOURCE_DIR}/iso .
|
||||
COMMAND cp ${CMAKE_BINARY_DIR}/mentos/kernel_bootloader.bin ${CMAKE_BINARY_DIR}/iso/boot
|
||||
COMMAND cp ${CMAKE_BINARY_DIR}/mentos/bootloader.bin ${CMAKE_BINARY_DIR}/iso/boot
|
||||
COMMAND grub-mkrescue -o ${CMAKE_BINARY_DIR}/cdrom.iso ${CMAKE_BINARY_DIR}/iso
|
||||
DEPENDS kernel_bootloader.bin
|
||||
DEPENDS bootloader.bin
|
||||
)
|
||||
|
||||
# This third target runs the emualtor, but this time, the kernel binary file is
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2014-2022 MentOs-Team.
|
||||
Copyright (c) 2014-2024 MentOs-Team.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
+263
-263
@@ -3,7 +3,7 @@ find_package(Doxygen)
|
||||
|
||||
if (DOXYGEN_FOUND)
|
||||
# Read the file with the version.
|
||||
file(READ ${PROJECT_SOURCE_DIR}/mentos/inc/version.h version_file)
|
||||
file(READ ${CMAKE_SOURCE_DIR}/mentos/inc/version.h version_file)
|
||||
# Extract the OS version.
|
||||
string(REGEX MATCH "OS_MAJOR_VERSION ([0-9]*)" _ ${version_file})
|
||||
set(OS_MAJOR_VERSION ${CMAKE_MATCH_1})
|
||||
@@ -15,8 +15,8 @@ if (DOXYGEN_FOUND)
|
||||
set(DOXYGEN_PROJECT_NAME "MentOS")
|
||||
set(DOXYGEN_PROJECT_NUMBER "${OS_MAJOR_VERSION}.${OS_MINOR_VERSION}.${OS_MICRO_VERSION}")
|
||||
set(DOXYGEN_PROJECT_BRIEF "The Mentoring Operating System")
|
||||
set(DOXYGEN_USE_MDFILE_AS_MAINPAGE ${PROJECT_SOURCE_DIR}/README.md)
|
||||
set(DOXYGEN_IMAGE_PATH ${PROJECT_SOURCE_DIR}/doc/resources)
|
||||
set(DOXYGEN_USE_MDFILE_AS_MAINPAGE ${CMAKE_SOURCE_DIR}/README.md)
|
||||
set(DOXYGEN_IMAGE_PATH ${CMAKE_SOURCE_DIR}/doc/resources)
|
||||
set(DOXYGEN_SHOW_INCLUDE_FILES NO)
|
||||
set(DOXYGEN_GENERATE_TREEVIEW NO)
|
||||
set(DOXYGEN_WARN_NO_PARAMDOC YES)
|
||||
@@ -28,272 +28,272 @@ if (DOXYGEN_FOUND)
|
||||
set(DOXYGEN_PREDEFINED "__attribute__((x))= _syscall0= _syscall0(x)= _syscall1(x)= _syscall2(x)= _syscall3(x)=")
|
||||
|
||||
set(DOXYGEN_WARN_FORMAT "$file($line): $text")
|
||||
set(DOXYGEN_HTML_STYLESHEET ${PROJECT_SOURCE_DIR}/doc/doxygen.css)
|
||||
set(DOXYGEN_HTML_STYLESHEET ${CMAKE_SOURCE_DIR}/doc/doxygen.css)
|
||||
doxygen_add_docs(
|
||||
${PROJECT_NAME}_documentation
|
||||
${PROJECT_SOURCE_DIR}/README.md
|
||||
${PROJECT_SOURCE_DIR}/LICENSE.md
|
||||
${PROJECT_SOURCE_DIR}/doc/signal.md
|
||||
${PROJECT_SOURCE_DIR}/doc/syscall.md
|
||||
mentos_documentation
|
||||
${CMAKE_SOURCE_DIR}/README.md
|
||||
${CMAKE_SOURCE_DIR}/LICENSE.md
|
||||
${CMAKE_SOURCE_DIR}/doc/signal.md
|
||||
${CMAKE_SOURCE_DIR}/doc/syscall.md
|
||||
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/boot.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/descriptor_tables/gdt.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/descriptor_tables/idt.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/descriptor_tables/isr.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/descriptor_tables/tss.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/devices/fpu.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/devices/pci.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/drivers/ata/ata.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/drivers/ata/ata_types.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/drivers/fdc.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/drivers/keyboard/keyboard.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/drivers/keyboard/keymap.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/drivers/mouse.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/drivers/ps2.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/drivers/rtc.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/elf/elf.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/fs/ext2.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/fs/ioctl.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/fs/procfs.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/fs/vfs.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/fs/vfs_types.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/hardware/cpuid.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/hardware/pic8259.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/hardware/timer.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/io/proc_modules.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/io/vga/vga.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/io/vga/vga_font.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/io/vga/vga_mode.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/io/vga/vga_palette.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/io/video.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/kernel.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/compiler.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/hashmap.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/irqflags.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/list.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/list_head.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/mutex.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/ndtree.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/rbtree.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/spinlock.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/stack_helper.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/klib/stdatomic.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/link_access.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/mem/buddysystem.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/mem/gfp.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/mem/kheap.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/mem/paging.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/mem/slab.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/mem/vmem_map.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/mem/zone_allocator.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/multiboot.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/process/prio.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/process/process.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/process/scheduler.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/process/wait.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/proc_access.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/sys/errno.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/sys/ipc.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/sys/module.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/sys/reboot.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/sys/types.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/sys/utsname.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/system/panic.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/system/printk.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/system/signal.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/system/syscall.h
|
||||
${PROJECT_SOURCE_DIR}/mentos/inc/version.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/boot.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/descriptor_tables/gdt.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/descriptor_tables/idt.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/descriptor_tables/isr.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/descriptor_tables/tss.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/devices/fpu.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/devices/pci.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/drivers/ata/ata.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/drivers/ata/ata_types.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/drivers/fdc.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/drivers/keyboard/keyboard.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/drivers/keyboard/keymap.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/drivers/mouse.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/drivers/ps2.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/drivers/rtc.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/elf/elf.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/fs/ext2.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/fs/ioctl.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/fs/procfs.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/fs/vfs.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/fs/vfs_types.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/hardware/cpuid.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/hardware/pic8259.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/hardware/timer.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/io/proc_modules.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/io/vga/vga.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/io/vga/vga_font.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/io/vga/vga_mode.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/io/vga/vga_palette.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/io/video.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/kernel.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/compiler.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/hashmap.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/irqflags.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/list.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/list_head.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/mutex.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/ndtree.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/rbtree.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/spinlock.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/stack_helper.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/klib/stdatomic.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/link_access.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/mem/buddysystem.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/mem/gfp.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/mem/kheap.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/mem/paging.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/mem/slab.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/mem/vmem_map.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/mem/zone_allocator.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/multiboot.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/process/prio.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/process/process.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/process/scheduler.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/process/wait.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/proc_access.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/sys/errno.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/sys/ipc.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/sys/module.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/sys/reboot.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/sys/types.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/sys/utsname.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/system/panic.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/system/printk.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/system/signal.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/system/syscall.h
|
||||
${CMAKE_SOURCE_DIR}/mentos/inc/version.h
|
||||
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/boot.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/descriptor_tables/exception.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/descriptor_tables/gdt.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/descriptor_tables/idt.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/descriptor_tables/interrupt.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/descriptor_tables/tss.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/devices/fpu.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/devices/pci.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/drivers/ata.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/drivers/fdc.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/drivers/keyboard/keyboard.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/drivers/keyboard/keymap.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/drivers/mouse.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/drivers/ps2.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/drivers/rtc.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/elf/elf.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/fs/ext2.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/fs/ioctl.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/fs/namei.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/fs/open.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/fs/procfs.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/fs/readdir.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/fs/read_write.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/fs/stat.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/fs/vfs.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/hardware/cpuid.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/hardware/pic8259.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/hardware/timer.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/io/debug.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/io/mm_io.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/io/proc_running.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/io/proc_system.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/io/proc_video.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/io/stdio.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/io/vga/vga.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/io/video.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/ipc/msg.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/ipc/sem.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/ipc/shm.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/kernel/sys.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/kernel.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/assert.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/ctype.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/fcvt.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/hashmap.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/libgen.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/list.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/math.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/mutex.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/ndtree.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/rbtree.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/spinlock.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/strerror.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/string.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/time.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/vscanf.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/klib/vsprintf.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/mem/buddysystem.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/mem/kheap.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/mem/paging.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/mem/slab.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/mem/vmem_map.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/mem/zone_allocator.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/multiboot.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/process/process.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/process/scheduler.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/process/scheduler_algorithm.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/process/wait.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/sys/module.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/sys/utsname.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/system/errno.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/system/panic.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/system/printk.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/system/signal.c
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/system/syscall.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/boot.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/descriptor_tables/exception.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/descriptor_tables/gdt.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/descriptor_tables/idt.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/descriptor_tables/interrupt.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/descriptor_tables/tss.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/devices/fpu.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/devices/pci.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/drivers/ata.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/drivers/fdc.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/drivers/keyboard/keyboard.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/drivers/keyboard/keymap.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/drivers/mouse.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/drivers/ps2.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/drivers/rtc.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/elf/elf.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/fs/ext2.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/fs/ioctl.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/fs/namei.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/fs/open.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/fs/procfs.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/fs/readdir.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/fs/read_write.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/fs/stat.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/fs/vfs.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/hardware/cpuid.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/hardware/pic8259.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/hardware/timer.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/io/debug.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/io/mm_io.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/io/proc_running.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/io/proc_system.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/io/proc_video.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/io/stdio.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/io/vga/vga.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/io/video.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/ipc/msg.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/ipc/sem.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/ipc/shm.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/kernel/sys.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/kernel.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/assert.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/ctype.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/fcvt.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/hashmap.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/libgen.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/list.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/math.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/mutex.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/ndtree.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/rbtree.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/spinlock.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/strerror.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/string.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/time.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/vscanf.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/klib/vsprintf.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/mem/buddysystem.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/mem/kheap.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/mem/paging.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/mem/slab.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/mem/vmem_map.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/mem/zone_allocator.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/multiboot.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/process/process.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/process/scheduler.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/process/scheduler_algorithm.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/process/wait.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/sys/module.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/sys/utsname.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/system/errno.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/system/panic.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/system/printk.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/system/signal.c
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/system/syscall.c
|
||||
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/boot.S
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/descriptor_tables/exception.S
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/descriptor_tables/gdt.S
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/descriptor_tables/idt.S
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/descriptor_tables/interrupt.S
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/descriptor_tables/tss.S
|
||||
${PROJECT_SOURCE_DIR}/mentos/src/process/user.S
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/boot.S
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/descriptor_tables/exception.S
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/descriptor_tables/gdt.S
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/descriptor_tables/idt.S
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/descriptor_tables/interrupt.S
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/descriptor_tables/tss.S
|
||||
${CMAKE_SOURCE_DIR}/mentos/src/process/user.S
|
||||
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/array.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/assert.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/bits/ioctls.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/bits/stat.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/bits/termios-struct.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/ctype.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/fcntl.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/fcvt.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/grp.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/io/ansi_colors.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/io/debug.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/io/mm_io.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/io/port_io.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/ipc/ipc.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/ipc/msg.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/ipc/sem.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/ipc/shm.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/libgen.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/limits.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/math.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/pwd.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/ring_buffer.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sched.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/signal.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/stdarg.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/stdbool.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/stddef.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/stdint.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/stdio.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/stdlib.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/strerror.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/string.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/bitops.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/dirent.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/errno.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/ioctl.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/kernel_levels.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/reboot.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/stat.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/types.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/unistd.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/utsname.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/sys/wait.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/system/syscall_types.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/termios.h
|
||||
${PROJECT_SOURCE_DIR}/libc/inc/time.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/array.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/assert.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/bits/ioctls.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/bits/stat.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/bits/termios-struct.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/ctype.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/fcntl.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/fcvt.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/grp.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/io/ansi_colors.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/io/debug.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/io/mm_io.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/io/port_io.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/ipc/ipc.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/ipc/msg.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/ipc/sem.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/ipc/shm.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/libgen.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/limits.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/math.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/pwd.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/ring_buffer.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sched.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/signal.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/stdarg.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/stdbool.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/stddef.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/stdint.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/stdio.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/stdlib.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/strerror.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/string.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/bitops.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/dirent.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/errno.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/ioctl.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/kernel_levels.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/reboot.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/stat.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/types.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/unistd.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/utsname.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/sys/wait.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/system/syscall_types.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/termios.h
|
||||
${CMAKE_SOURCE_DIR}/libc/inc/time.h
|
||||
|
||||
${PROJECT_SOURCE_DIR}/libc/src/abort.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/assert.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/ctype.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/fcvt.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/grp.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/io/debug.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/io/mm_io.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/ipc/ipc.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/libc_start.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/libgen.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/math.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/pwd.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sched.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/setenv.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/stdio.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/stdlib.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/strerror.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/string.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sys/errno.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sys/ioctl.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sys/unistd.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sys/utsname.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/termios.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/time.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/chdir.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/close.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/creat.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/exec.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/exit.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/fork.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getcwd.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getdents.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getgid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getpgid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getpid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getppid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getsid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getuid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/interval.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/kill.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/lseek.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/mkdir.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/nice.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/open.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/read.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/reboot.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/rmdir.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/setgid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/setpgid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/setsid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/setuid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/signal.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/stat.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/unlink.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/waitpid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/write.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/vscanf.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/vsprintf.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/abort.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/assert.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/ctype.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/fcvt.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/grp.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/io/debug.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/io/mm_io.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/ipc/ipc.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/libc_start.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/libgen.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/math.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/pwd.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sched.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/setenv.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/stdio.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/stdlib.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/strerror.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/string.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sys/errno.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sys/ioctl.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sys/unistd.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sys/utsname.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/termios.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/time.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/chdir.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/close.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/creat.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/exec.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/exit.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/fork.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getcwd.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getdents.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getgid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getpgid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getpid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getppid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getsid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getuid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/interval.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/kill.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/lseek.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/mkdir.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/nice.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/open.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/read.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/reboot.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/rmdir.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/setgid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/setpgid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/setsid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/setuid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/signal.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/stat.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/unlink.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/waitpid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/write.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/vscanf.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/vsprintf.c
|
||||
|
||||
${PROJECT_SOURCE_DIR}/libc/src/crt0.S
|
||||
${CMAKE_SOURCE_DIR}/libc/src/crt0.S
|
||||
)
|
||||
endif (DOXYGEN_FOUND)
|
||||
+164
-165
@@ -16,184 +16,183 @@ If the column is empty it means that it's not implemented yet.
|
||||
```
|
||||
S | EAX | Name | Source | EBX | ECX | EDX | ESX | EDI |
|
||||
---+-----+----------------------------+-----------------------------+--------------------------+------------------------------+-------------------------+-----------------+------------------|
|
||||
2 | 1 | sys_exit | kernel/exit.c | int | - | - | - | - |
|
||||
2 | 2 | sys_fork | arch/i386/kernel/process.c | struct pt_regs | - | - | - | - |
|
||||
2 | 1 | sys_exit | process/scheduler.c | int | - | - | - | - |
|
||||
2 | 2 | sys_fork | process/process.c | struct pt_regs | - | - | - | - |
|
||||
2 | 3 | sys_read | fs/read_write.c | unsigned int | char * | size_t | - | - |
|
||||
2 | 4 | sys_write | fs/read_write.c | unsigned int | const char * | size_t | - | - |
|
||||
2 | 5 | sys_open | fs/open.c | const char * | int | int | - | - |
|
||||
2 | 6 | sys_close | fs/open.c | int | - | - | - | - |
|
||||
2 | 7 | sys_waitpid | kernel/exit.c | pid_t | unsigned int * | int | - | - |
|
||||
2 | 8 | sys_creat | fs/open.c | const char * | int | - | - | - |
|
||||
| 9 | sys_link | fs/namei.c | const char * | const char * | - | - | - |
|
||||
2 | 7 | sys_waitpid | process/scheduler.c | pid_t | unsigned int * | int | - | - |
|
||||
2 | 8 | sys_creat | fs/namei.c | const char * | int | - | - | - |
|
||||
| 9 | sys_link | | const char * | const char * | - | - | - |
|
||||
2 | 10 | sys_unlink | fs/namei.c | const char * | - | - | - | - |
|
||||
2 | 11 | sys_execve | arch/i386/kernel/process.c | struct pt_regs | - | - | - | - |
|
||||
2 | 12 | sys_chdir | fs/open.c | const char * | - | - | - | - |
|
||||
2 | 13 | sys_time | kernel/time.c | int * | - | - | - | - |
|
||||
| 14 | sys_mknod | fs/namei.c | const char * | int | dev_t | - | - |
|
||||
| 15 | sys_chmod | fs/open.c | const char * | mode_t | - | - | - |
|
||||
| 16 | sys_lchown | fs/open.c | const char * | uid_t | gid_t | - | - |
|
||||
2 | 11 | sys_execve | process/process.c | struct pt_regs | - | - | - | - |
|
||||
2 | 12 | sys_chdir | process/process.c | const char * | - | - | - | - |
|
||||
2 | 13 | sys_time | klib/time.c | int * | - | - | - | - |
|
||||
| 14 | sys_mknod | | const char * | int | dev_t | - | - |
|
||||
1 | 15 | sys_chmod | fs/attr.c | const char * | mode_t | - | - | - |
|
||||
| 16 | sys_lchown | fs/attr.c | const char * | uid_t | gid_t | - | - |
|
||||
2 | 18 | sys_stat | fs/stat.c | char * | struct __old_kernel_stat * | - | - | - |
|
||||
2 | 19 | sys_lseek | fs/read_write.c | unsigned int | off_t | unsigned int | - | - |
|
||||
2 | 20 | sys_getpid | kernel/sched.c | - | - | - | - | - |
|
||||
| 21 | sys_mount | fs/super.c | char * | char * | char * | - | - |
|
||||
| 22 | sys_oldumount | fs/super.c | char * | - | - | - | - |
|
||||
2 | 23 | sys_setuid | kernel/sys.c | uid_t | - | - | - | - |
|
||||
2 | 24 | sys_getuid | kernel/sched.c | - | - | - | - | - |
|
||||
| 25 | sys_stime | kernel/time.c | int * | - | - | - | - |
|
||||
| 26 | sys_ptrace | arch/i386/kernel/ptrace.c | long | long | long | long | - |
|
||||
2 | 27 | sys_alarm | kernel/sched.c | unsigned int | - | - | - | - |
|
||||
2 | 20 | sys_getpid | process/scheduler.c | - | - | - | - | - |
|
||||
| 21 | sys_mount | | char * | char * | char * | - | - |
|
||||
| 22 | sys_oldumount | | char * | - | - | - | - |
|
||||
2 | 23 | sys_setuid | process/scheduler.c | uid_t | - | - | - | - |
|
||||
2 | 24 | sys_getuid | process/scheduler.c | - | - | - | - | - |
|
||||
| 25 | sys_stime | | int * | - | - | - | - |
|
||||
| 26 | sys_ptrace | | long | long | long | long | - |
|
||||
2 | 27 | sys_alarm | hardware/timer.c | unsigned int | - | - | - | - |
|
||||
2 | 28 | sys_fstat | fs/stat.c | unsigned int | struct __old_kernel_stat * | - | - | - |
|
||||
| 29 | sys_pause | arch/i386/kernel/sys_i386.c | - | - | - | - | - |
|
||||
| 30 | sys_utime | fs/open.c | char * | struct utimbuf * | - | - | - |
|
||||
| 33 | sys_access | fs/open.c | const char * | int | - | - | - |
|
||||
1 | 34 | sys_nice | kernel/sched.c | int | - | - | - | - |
|
||||
| 36 | sys_sync | fs/buffer.c | - | - | - | - | - |
|
||||
1 | 37 | sys_kill | kernel/signal.c | int | int | - | - | - |
|
||||
| 38 | sys_rename | fs/namei.c | const char * | const char * | - | - | - |
|
||||
| 29 | sys_pause | | - | - | - | - | - |
|
||||
| 30 | sys_utime | | char * | struct utimbuf * | - | - | - |
|
||||
| 33 | sys_access | | const char * | int | - | - | - |
|
||||
1 | 34 | sys_nice | process/scheduler.c | int | - | - | - | - |
|
||||
| 36 | sys_sync | | - | - | - | - | - |
|
||||
1 | 37 | sys_kill | system/signal.c | int | int | - | - | - |
|
||||
| 38 | sys_rename | | const char * | const char * | - | - | - |
|
||||
2 | 39 | sys_mkdir | fs/namei.c | const char * | int | - | - | - |
|
||||
2 | 40 | sys_rmdir | fs/namei.c | const char * | - | - | - | - |
|
||||
| 41 | sys_dup | fs/fcntl.c | unsigned int | - | - | - | - |
|
||||
| 42 | sys_pipe | arch/i386/kernel/sys_i386.c | unsigned long * | - | - | - | - |
|
||||
| 43 | sys_times | kernel/sys.c | struct tms * | - | - | - | - |
|
||||
2 | 45 | sys_brk | mm/mmap.c | unsigned long | - | - | - | - |
|
||||
2 | 46 | sys_setgid | kernel/sys.c | gid_t | - | - | - | - |
|
||||
2 | 47 | sys_getgid | kernel/sched.c | - | - | - | - | - |
|
||||
1 | 48 | sys_signal | kernel/signal.c | int | __sighandler_t | - | - | - |
|
||||
| 49 | sys_geteuid | kernel/sched.c | - | - | - | - | - |
|
||||
| 50 | sys_getegid | kernel/sched.c | - | - | - | - | - |
|
||||
| 51 | sys_acct | kernel/acct.c | const char * | - | - | - | - |
|
||||
| 52 | sys_umount | fs/super.c | char * | int | - | - | - |
|
||||
1 | 41 | sys_dup | fs/vfs.c | unsigned int | - | - | - | - |
|
||||
| 42 | sys_pipe | | unsigned long * | - | - | - | - |
|
||||
| 43 | sys_times | | struct tms * | - | - | - | - |
|
||||
2 | 45 | sys_brk | mem/kheap.c | unsigned long | - | - | - | - |
|
||||
2 | 46 | sys_setgid | process/scheduler.c | gid_t | - | - | - | - |
|
||||
2 | 47 | sys_getgid | process/scheduler.c | - | - | - | - | - |
|
||||
1 | 48 | sys_signal | system/signal.c | int | __sighandler_t | - | - | - |
|
||||
1 | 49 | sys_geteuid | process/scheduler.c | - | - | - | - | - |
|
||||
1 | 50 | sys_getegid | process/scheduler.c | - | - | - | - | - |
|
||||
| 51 | sys_acct | | const char * | - | - | - | - |
|
||||
| 52 | sys_umount | | char * | int | - | - | - |
|
||||
1 | 54 | sys_ioctl | fs/ioctl.c | unsigned int | unsigned int | unsigned long | - | - |
|
||||
| 55 | sys_fcntl | fs/fcntl.c | unsigned int | unsigned int | unsigned long | - | - |
|
||||
2 | 57 | sys_setpgid | kernel/sys.c | pid_t | pid_t | - | - | - |
|
||||
| 59 | sys_olduname | arch/i386/kernel/sys_i386.c | struct oldold_utsname * | - | - | - | - |
|
||||
| 60 | sys_umask | kernel/sys.c | int | - | - | - | - |
|
||||
| 61 | sys_chroot | fs/open.c | const char * | - | - | - | - |
|
||||
| 62 | sys_ustat | fs/super.c | dev_t | struct ustat * | - | - | - |
|
||||
| 63 | sys_dup2 | fs/fcntl.c | unsigned int | unsigned int | - | - | - |
|
||||
2 | 64 | sys_getppid | kernel/sched.c | - | - | - | - | - |
|
||||
| 65 | sys_getpgrp | kernel/sys.c | - | - | - | - | - |
|
||||
2 | 66 | sys_setsid | kernel/sys.c | - | - | - | - | - |
|
||||
1 | 67 | sys_sigaction | arch/i386/kernel/signal.c | int | const struct old_sigaction * | struct old_sigaction * | - | - |
|
||||
X | 68 | sys_sgetmask | kernel/signal.c | - | - | - | - | - |
|
||||
X | 69 | sys_ssetmask | kernel/signal.c | int | - | - | - | - |
|
||||
| 70 | sys_setreuid | kernel/sys.c | uid_t | uid_t | - | - | - |
|
||||
| 71 | sys_setregid | kernel/sys.c | gid_t | gid_t | - | - | - |
|
||||
| 72 | sys_sigsuspend | arch/i386/kernel/signal.c | int | int | old_sigset_t | - | - |
|
||||
| 73 | sys_sigpending | kernel/signal.c | old_sigset_t * | - | - | - | - |
|
||||
| 74 | sys_sethostname | kernel/sys.c | char * | int | - | - | - |
|
||||
| 75 | sys_setrlimit | kernel/sys.c | unsigned int | struct rlimit * | - | - | - |
|
||||
| 76 | sys_getrlimit | kernel/sys.c | unsigned int | struct rlimit * | - | - | - |
|
||||
| 77 | sys_getrusage | kernel/sys.c | int | struct rusage * | - | - | - |
|
||||
| 78 | sys_gettimeofday | kernel/time.c | struct timeval * | struct timezone * | - | - | - |
|
||||
| 79 | sys_settimeofday | kernel/time.c | struct timeval * | struct timezone * | - | - | - |
|
||||
| 80 | sys_getgroups | kernel/sys.c | int | gid_t * | - | - | - |
|
||||
| 81 | sys_setgroups | kernel/sys.c | int | gid_t * | - | - | - |
|
||||
| 83 | sys_symlink | fs/namei.c | const char * | const char * | - | - | - |
|
||||
| 84 | sys_lstat | fs/stat.c | char * | struct __old_kernel_stat * | - | - | - |
|
||||
| 85 | sys_readlink | fs/stat.c | const char * | char * | int | - | - |
|
||||
| 86 | sys_uselib | fs/exec.c | const char * | - | - | - | - |
|
||||
| 87 | sys_swapon | mm/swapfile.c | const char * | int | - | - | - |
|
||||
| 55 | sys_fcntl | | unsigned int | unsigned int | unsigned long | - | - |
|
||||
2 | 57 | sys_setpgid | process/scheduler.c | pid_t | pid_t | - | - | - |
|
||||
| 59 | sys_olduname | | struct oldold_utsname * | - | - | - | - |
|
||||
| 60 | sys_umask | | int | - | - | - | - |
|
||||
| 61 | sys_chroot | | const char * | - | - | - | - |
|
||||
| 62 | sys_ustat | | dev_t | struct ustat * | - | - | - |
|
||||
| 63 | sys_dup2 | | unsigned int | unsigned int | - | - | - |
|
||||
2 | 64 | sys_getppid | process/scheduler.c | - | - | - | - | - |
|
||||
| 65 | sys_getpgrp | | - | - | - | - | - |
|
||||
2 | 66 | sys_setsid | process/scheduler.c | - | - | - | - | - |
|
||||
1 | 67 | sys_sigaction | system/signal.c | int | const struct old_sigaction * | struct old_sigaction * | - | - |
|
||||
X | 68 | sys_sgetmask | | - | - | - | - | - |
|
||||
X | 69 | sys_ssetmask | | int | - | - | - | - |
|
||||
1 | 70 | sys_setreuid | process/scheduler.c | uid_t | uid_t | - | - | - |
|
||||
1 | 71 | sys_setregid | process/scheduler.c | gid_t | gid_t | - | - | - |
|
||||
| 72 | sys_sigsuspend | | int | int | old_sigset_t | - | - |
|
||||
| 73 | sys_sigpending | | old_sigset_t * | - | - | - | - |
|
||||
| 74 | sys_sethostname | | char * | int | - | - | - |
|
||||
| 75 | sys_setrlimit | | unsigned int | struct rlimit * | - | - | - |
|
||||
| 76 | sys_getrlimit | | unsigned int | struct rlimit * | - | - | - |
|
||||
| 77 | sys_getrusage | | int | struct rusage * | - | - | - |
|
||||
| 78 | sys_gettimeofday | | struct timeval * | struct timezone * | - | - | - |
|
||||
| 79 | sys_settimeofday | | struct timeval * | struct timezone * | - | - | - |
|
||||
| 80 | sys_getgroups | | int | gid_t * | - | - | - |
|
||||
| 81 | sys_setgroups | | int | gid_t * | - | - | - |
|
||||
| 83 | sys_symlink | | const char * | const char * | - | - | - |
|
||||
| 84 | sys_lstat | | char * | struct __old_kernel_stat * | - | - | - |
|
||||
| 85 | sys_readlink | | const char * | char * | int | - | - |
|
||||
| 86 | sys_uselib | | const char * | - | - | - | - |
|
||||
| 87 | sys_swapon | | const char * | int | - | - | - |
|
||||
1 | 88 | sys_reboot | kernel/sys.c | int | int | int | void * | - |
|
||||
1 | 89 | old_readdir | fs/readdir.c | unsigned int | void * | unsigned int | - | - |
|
||||
| 90 | old_mmap | arch/i386/kernel/sys_i386.c | struct mmap_arg_struct * | - | - | - | - |
|
||||
| 91 | sys_munmap | mm/mmap.c | unsigned long | size_t | - | - | - |
|
||||
| 92 | sys_truncate | fs/open.c | const char * | unsigned long | - | - | - |
|
||||
| 93 | sys_ftruncate | fs/open.c | unsigned int | unsigned long | - | - | - |
|
||||
| 94 | sys_fchmod | fs/open.c | unsigned int | mode_t | - | - | - |
|
||||
| 95 | sys_fchown | fs/open.c | unsigned int | uid_t | gid_t | - | - |
|
||||
| 96 | sys_getpriority | kernel/sys.c | int | int | - | - | - |
|
||||
| 97 | sys_setpriority | kernel/sys.c | int | int | int | - | - |
|
||||
| 99 | sys_statfs | fs/open.c | const char * | struct statfs * | - | - | - |
|
||||
| 100 | sys_fstatfs | fs/open.c | unsigned int | struct statfs * | - | - | - |
|
||||
| 101 | sys_ioperm | arch/i386/kernel/ioport.c | unsigned long | unsigned long | int | - | - |
|
||||
| 102 | sys_socketcall | net/socket.c | int | unsigned long * | - | - | - |
|
||||
| 103 | sys_syslog | kernel/printk.c | int | char * | int | - | - |
|
||||
| 104 | sys_setitimer | kernel/itimer.c | int | struct itimerval * | struct itimerval * | - | - |
|
||||
| 105 | sys_getitimer | kernel/itimer.c | int | struct itimerval * | - | - | - |
|
||||
| 106 | sys_newstat | fs/stat.c | char * | struct stat * | - | - | - |
|
||||
| 107 | sys_newlstat | fs/stat.c | char * | struct stat * | - | - | - |
|
||||
| 108 | sys_newfstat | fs/stat.c | unsigned int | struct stat * | - | - | - |
|
||||
1 | 109 | sys_uname | arch/i386/kernel/sys_i386.c | struct old_utsname * | - | - | - | - |
|
||||
| 110 | sys_iopl | arch/i386/kernel/ioport.c | unsigned long | - | - | - | - |
|
||||
| 111 | sys_vhangup | fs/open.c | - | - | - | - | - |
|
||||
| 112 | sys_idle | arch/i386/kernel/process.c | - | - | - | - | - |
|
||||
| 113 | sys_vm86old | arch/i386/kernel/vm86.c | unsigned long | struct vm86plus_struct * | - | - | - |
|
||||
| 114 | sys_wait4 | kernel/exit.c | pid_t | unsigned long * | int options | struct rusage * | - |
|
||||
| 115 | sys_swapoff | mm/swapfile.c | const char * | - | - | - | - |
|
||||
| 116 | sys_sysinfo | kernel/info.c | struct sysinfo * | - | - | - | - |
|
||||
* | 117 | sys_ipc(*Note) | arch/i386/kernel/sys_i386.c | uint | int | int | int | void * |
|
||||
| 118 | sys_fsync | fs/buffer.c | unsigned int | - | - | - | - |
|
||||
| 119 | sys_sigreturn | arch/i386/kernel/signal.c | unsigned long | - | - | - | - |
|
||||
| 120 | sys_clone | arch/i386/kernel/process.c | struct pt_regs | - | - | - | - |
|
||||
| 121 | sys_setdomainname | kernel/sys.c | char * | int | - | - | - |
|
||||
| 122 | sys_newuname | kernel/sys.c | struct new_utsname * | - | - | - | - |
|
||||
| 123 | sys_modify_ldt | arch/i386/kernel/ldt.c | int | void * | unsigned long | - | - |
|
||||
| 124 | sys_adjtimex | kernel/time.c | struct timex * | - | - | - | - |
|
||||
| 125 | sys_mprotect | mm/mprotect.c | unsigned long | size_t | unsigned long | - | - |
|
||||
1 | 126 | sys_sigprocmask | kernel/signal.c | int | old_sigset_t * | old_sigset_t * | - | - |
|
||||
| 127 | sys_create_module | kernel/module.c | const char * | size_t | - | - | - |
|
||||
| 128 | sys_init_module | kernel/module.c | const char * | struct module * | - | - | - |
|
||||
| 129 | sys_delete_module | kernel/module.c | const char * | - | - | - | - |
|
||||
| 130 | sys_get_kernel_syms | kernel/module.c | struct kernel_sym * | - | - | - | - |
|
||||
| 131 | sys_quotactl | fs/dquot.c | int | const char * | int | caddr_t | - |
|
||||
| 132 | sys_getpgid | kernel/sys.c | pid_t | - | - | - | - |
|
||||
1 | 133 | sys_fchdir | fs/open.c | unsigned int | - | - | - | - |
|
||||
| 134 | sys_bdflush | fs/buffer.c | int | long | - | - | - |
|
||||
| 135 | sys_sysfs | fs/super.c | int | unsigned long | unsigned long | - | - |
|
||||
| 136 | sys_personality | kernel/exec_domain.c | unsigned long | - | - | - | - |
|
||||
| 138 | sys_setfsuid | kernel/sys.c | uid_t | - | - | - | - |
|
||||
| 139 | sys_setfsgid | kernel/sys.c | gid_t | - | - | - | - |
|
||||
| 140 | sys_llseek | fs/read_write.c | unsigned int | unsigned long | unsigned long | loff_t * | unsigned int |
|
||||
| 89 | old_readdir | | unsigned int | void * | unsigned int | - | - |
|
||||
| 90 | old_mmap | | struct mmap_arg_struct * | - | - | - | - |
|
||||
| 91 | sys_munmap | | unsigned long | size_t | - | - | - |
|
||||
| 92 | sys_truncate | | const char * | unsigned long | - | - | - |
|
||||
| 93 | sys_ftruncate | | unsigned int | unsigned long | - | - | - |
|
||||
| 94 | sys_fchmod | | unsigned int | mode_t | - | - | - |
|
||||
1 | 95 | sys_fchown | fs/attr.c | unsigned int | uid_t | gid_t | - | - |
|
||||
| 96 | sys_getpriority | | int | int | - | - | - |
|
||||
| 97 | sys_setpriority | | int | int | int | - | - |
|
||||
| 99 | sys_statfs | | const char * | struct statfs * | - | - | - |
|
||||
| 100 | sys_fstatfs | | unsigned int | struct statfs * | - | - | - |
|
||||
| 101 | sys_ioperm | | unsigned long | unsigned long | int | - | - |
|
||||
| 102 | sys_socketcall | | int | unsigned long * | - | - | - |
|
||||
1 | 103 | sys_syslog | system/printk.c | int | char * | int | - | - |
|
||||
1 | 104 | sys_setitimer | hardware/timer.c | int | struct itimerval * | struct itimerval * | - | - |
|
||||
1 | 105 | sys_getitimer | hardware/timer.c | int | struct itimerval * | - | - | - |
|
||||
| 106 | sys_newstat | | char * | struct stat * | - | - | - |
|
||||
| 107 | sys_newlstat | | char * | struct stat * | - | - | - |
|
||||
| 108 | sys_newfstat | | unsigned int | struct stat * | - | - | - |
|
||||
1 | 109 | sys_uname | sys/utsname.c | struct old_utsname * | - | - | - | - |
|
||||
| 110 | sys_iopl | | unsigned long | - | - | - | - |
|
||||
| 111 | sys_vhangup | | - | - | - | - | - |
|
||||
| 112 | sys_idle | | - | - | - | - | - |
|
||||
| 113 | sys_vm86old | | unsigned long | struct vm86plus_struct * | - | - | - |
|
||||
| 114 | sys_wait4 | | pid_t | unsigned long * | int options | struct rusage * | - |
|
||||
| 115 | sys_swapoff | | const char * | - | - | - | - |
|
||||
| 116 | sys_sysinfo | | struct sysinfo * | - | - | - | - |
|
||||
* | 117 | sys_ipc(*Note) | | uint | int | int | int | void * |
|
||||
| 118 | sys_fsync | | unsigned int | - | - | - | - |
|
||||
1 | 119 | sys_sigreturn | system/signal.c | unsigned long | - | - | - | - |
|
||||
| 120 | sys_clone | | struct pt_regs | - | - | - | - |
|
||||
| 121 | sys_setdomainname | | char * | int | - | - | - |
|
||||
| 122 | sys_newuname | | struct new_utsname * | - | - | - | - |
|
||||
| 123 | sys_modify_ldt | | int | void * | unsigned long | - | - |
|
||||
| 124 | sys_adjtimex | | struct timex * | - | - | - | - |
|
||||
| 125 | sys_mprotect | | unsigned long | size_t | unsigned long | - | - |
|
||||
1 | 126 | sys_sigprocmask | system/signal.c | int | old_sigset_t * | old_sigset_t * | - | - |
|
||||
| 127 | sys_create_module | | const char * | size_t | - | - | - |
|
||||
| 128 | sys_init_module | | const char * | struct module * | - | - | - |
|
||||
| 129 | sys_delete_module | | const char * | - | - | - | - |
|
||||
| 130 | sys_get_kernel_syms | | struct kernel_sym * | - | - | - | - |
|
||||
| 131 | sys_quotactl | | int | const char * | int | caddr_t | - |
|
||||
| 132 | sys_getpgid | | pid_t | - | - | - | - |
|
||||
1 | 133 | sys_fchdir | process/process.c | unsigned int | - | - | - | - |
|
||||
| 134 | sys_bdflush | | int | long | - | - | - |
|
||||
| 135 | sys_sysfs | | int | unsigned long | unsigned long | - | - |
|
||||
| 136 | sys_personality | | unsigned long | - | - | - | - |
|
||||
| 138 | sys_setfsuid | | uid_t | - | - | - | - |
|
||||
| 139 | sys_setfsgid | | gid_t | - | - | - | - |
|
||||
| 140 | sys_llseek | | unsigned int | unsigned long | unsigned long | loff_t * | unsigned int |
|
||||
2 | 141 | sys_getdents | fs/readdir.c | unsigned int | void * | unsigned int | - | - |
|
||||
| 142 | sys_select | fs/select.c | int | fd_set * | fd_set * | fd_set * | struct timeval * |
|
||||
| 143 | sys_flock | fs/locks.c | unsigned int | unsigned int | - | - | - |
|
||||
| 144 | sys_msync | mm/filemap.c | unsigned long | size_t | int | - | - |
|
||||
| 145 | sys_readv | fs/read_write.c | unsigned long | const struct iovec * | unsigned long | - | - |
|
||||
| 146 | sys_writev | fs/read_write.c | unsigned long | const struct iovec * | unsigned long | - | - |
|
||||
| 147 | sys_getsid | kernel/sys.c | pid_t | - | - | - | - |
|
||||
| 148 | sys_fdatasync | fs/buffer.c | unsigned int | - | - | - | - |
|
||||
| 149 | sys_sysctl | kernel/sysctl.c | struct __sysctl_args * | - | - | - | - |
|
||||
| 150 | sys_mlock | mm/mlock.c | unsigned long | size_t | - | - | - |
|
||||
| 151 | sys_munlock | mm/mlock.c | unsigned long | size_t | - | - | - |
|
||||
| 152 | sys_mlockall | mm/mlock.c | int | - | - | - | - |
|
||||
| 153 | sys_munlockall | mm/mlock.c | - | - | - | - | - |
|
||||
1 | 154 | sys_sched_setparam | kernel/sched.c | pid_t | struct sched_param * | - | - | - |
|
||||
1 | 155 | sys_sched_getparam | kernel/sched.c | pid_t | struct sched_param * | - | - | - |
|
||||
| 156 | sys_sched_setscheduler | kernel/sched.c | pid_t | int | struct sched_param * | - | - |
|
||||
| 157 | sys_sched_getscheduler | kernel/sched.c | pid_t | - | - | - | - |
|
||||
| 158 | sys_sched_yield | kernel/sched.c | - | - | - | - | - |
|
||||
| 159 | sys_sched_get_priority_max | kernel/sched.c | int | - | - | - | - |
|
||||
| 160 | sys_sched_get_priority_min | kernel/sched.c | int | - | - | - | - |
|
||||
| 161 | sys_sched_rr_get_interval | kernel/sched.c | pid_t | struct timespec * | - | - | - |
|
||||
| 162 | sys_nanosleep | kernel/sched.c | struct timespec * | struct timespec * | - | - | - |
|
||||
| 163 | sys_mremap | mm/mremap.c | unsigned long | unsigned long | unsigned long | unsigned long | - |
|
||||
| 164 | sys_setresuid | kernel/sys.c | uid_t | uid_t | uid_t | - | - |
|
||||
| 165 | sys_getresuid | kernel/sys.c | uid_t * | uid_t * | uid_t * | - | - |
|
||||
| 166 | sys_vm86 | arch/i386/kernel/vm86.c | struct vm86_struct * | - | - | - | - |
|
||||
| 167 | sys_query_module | kernel/module.c | const char * | int | char * | size_t | size_t * |
|
||||
| 168 | sys_poll | fs/select.c | struct pollfd * | unsigned int | long | - | - |
|
||||
| 169 | sys_nfsservctl | fs/filesystems.c | int | void * | void * | - | - |
|
||||
| 170 | sys_setresgid | kernel/sys.c | gid_t | gid_t | gid_t | - | - |
|
||||
| 171 | sys_getresgid | kernel/sys.c | gid_t * | gid_t * | gid_t * | - | - |
|
||||
| 172 | sys_prctl | kernel/sys.c | int | unsigned long | unsigned long | unsigned long | unsigned long |
|
||||
| 173 | sys_rt_sigreturn | arch/i386/kernel/signal.c | unsigned long | - | - | - | - |
|
||||
| 174 | sys_rt_sigaction | kernel/signal.c | int | const struct sigaction * | struct sigaction * | size_t | - |
|
||||
| 175 | sys_rt_sigprocmask | kernel/signal.c | int | sigset_t * | sigset_t * | size_t | - |
|
||||
| 176 | sys_rt_sigpending | kernel/signal.c | sigset_t * | size_t | - | - | - |
|
||||
| 177 | sys_rt_sigtimedwait | kernel/signal.c | const sigset_t * | siginfo_t * | const struct timespec * | size_t | - |
|
||||
| 178 | sys_rt_sigqueueinfo | kernel/signal.c | int | int | siginfo_t * | - | - |
|
||||
| 179 | sys_rt_sigsuspend | arch/i386/kernel/signal.c | sigset_t * | size_t | - | - | - |
|
||||
| 180 | sys_pread | fs/read_write.c | unsigned int | char * | size_t | loff_t | - |
|
||||
| 181 | sys_pwrite | fs/read_write.c | unsigned int | const char * | size_t | loff_t | - |
|
||||
| 182 | sys_chown | fs/open.c | const char * | uid_t | gid_t | - | - |
|
||||
1 | 183 | sys_getcwd | fs/dcache.c | char * | unsigned long | - | - | - |
|
||||
| 184 | sys_capget | kernel/capability.c | cap_user_header_t | cap_user_data_t | - | - | - |
|
||||
| 185 | sys_capset | kernel/capability.c | cap_user_header_t | const cap_user_data_t | - | - | - |
|
||||
| 186 | sys_sigaltstack | arch/i386/kernel/signal.c | const stack_t * | stack_t * | - | - | - |
|
||||
| 187 | sys_sendfile | mm/filemap.c | int | int | off_t * | size_t | - |
|
||||
| | | | | | | | |
|
||||
2 | 188 | sys_waitperiod | kernel/sched.c | | | | | |
|
||||
| 142 | sys_select | | int | fd_set * | fd_set * | fd_set * | struct timeval * |
|
||||
| 143 | sys_flock | | unsigned int | unsigned int | - | - | - |
|
||||
| 144 | sys_msync | | unsigned long | size_t | int | - | - |
|
||||
| 145 | sys_readv | | unsigned long | const struct iovec * | unsigned long | - | - |
|
||||
| 146 | sys_writev | | unsigned long | const struct iovec * | unsigned long | - | - |
|
||||
1 | 147 | sys_getsid | process/scheduler.c | pid_t | - | - | - | - |
|
||||
| 148 | sys_fdatasync | | unsigned int | - | - | - | - |
|
||||
| 149 | sys_sysctl | | struct __sysctl_args * | - | - | - | - |
|
||||
| 150 | sys_mlock | | unsigned long | size_t | - | - | - |
|
||||
| 151 | sys_munlock | | unsigned long | size_t | - | - | - |
|
||||
| 152 | sys_mlockall | | int | - | - | - | - |
|
||||
| 153 | sys_munlockall | | - | - | - | - | - |
|
||||
1 | 154 | sys_sched_setparam | process/scheduler.c | pid_t | struct sched_param * | - | - | - |
|
||||
1 | 155 | sys_sched_getparam | process/scheduler.c | pid_t | struct sched_param * | - | - | - |
|
||||
| 156 | sys_sched_setscheduler | | pid_t | int | struct sched_param * | - | - |
|
||||
| 157 | sys_sched_getscheduler | | pid_t | - | - | - | - |
|
||||
| 158 | sys_sched_yield | | - | - | - | - | - |
|
||||
| 159 | sys_sched_get_priority_max | | int | - | - | - | - |
|
||||
| 160 | sys_sched_get_priority_min | | int | - | - | - | - |
|
||||
| 161 | sys_sched_rr_get_interval | | pid_t | struct timespec * | - | - | - |
|
||||
1 | 162 | sys_nanosleep | hardware/timer.c | struct timespec * | struct timespec * | - | - | - |
|
||||
| 163 | sys_mremap | | unsigned long | unsigned long | unsigned long | unsigned long | - |
|
||||
| 164 | sys_setresuid | | uid_t | uid_t | uid_t | - | - |
|
||||
| 165 | sys_getresuid | | uid_t * | uid_t * | uid_t * | - | - |
|
||||
| 166 | sys_vm86 | | struct vm86_struct * | - | - | - | - |
|
||||
| 167 | sys_query_module | | const char * | int | char * | size_t | size_t * |
|
||||
| 168 | sys_poll | | struct pollfd * | unsigned int | long | - | - |
|
||||
| 169 | sys_nfsservctl | | int | void * | void * | - | - |
|
||||
| 170 | sys_setresgid | | gid_t | gid_t | gid_t | - | - |
|
||||
| 171 | sys_getresgid | | gid_t * | gid_t * | gid_t * | - | - |
|
||||
| 172 | sys_prctl | | int | unsigned long | unsigned long | unsigned long | unsigned long |
|
||||
| 173 | sys_rt_sigreturn | | unsigned long | - | - | - | - |
|
||||
| 174 | sys_rt_sigaction | | int | const struct sigaction * | struct sigaction * | size_t | - |
|
||||
| 175 | sys_rt_sigprocmask | | int | sigset_t * | sigset_t * | size_t | - |
|
||||
| 176 | sys_rt_sigpending | | sigset_t * | size_t | - | - | - |
|
||||
| 177 | sys_rt_sigtimedwait | | const sigset_t * | siginfo_t * | const struct timespec * | size_t | - |
|
||||
| 178 | sys_rt_sigqueueinfo | | int | int | siginfo_t * | - | - |
|
||||
| 179 | sys_rt_sigsuspend | | sigset_t * | size_t | - | - | - |
|
||||
| 180 | sys_pread | | unsigned int | char * | size_t | loff_t | - |
|
||||
| 181 | sys_pwrite | | unsigned int | const char * | size_t | loff_t | - |
|
||||
1 | 182 | sys_chown | vfs/attr.c | const char * | uid_t | gid_t | - | - |
|
||||
1 | 183 | sys_getcwd | process/process.c | char * | unsigned long | - | - | - |
|
||||
| 184 | sys_capget | | cap_user_header_t | cap_user_data_t | - | - | - |
|
||||
| 185 | sys_capset | | cap_user_header_t | const cap_user_data_t | - | - | - |
|
||||
| 186 | sys_sigaltstack | | const stack_t * | stack_t * | - | - | - |
|
||||
| 187 | sys_sendfile | | int | int | off_t * | size_t | - |
|
||||
2 | 188 | sys_waitperiod | process/scheduler.c | | | | | |
|
||||
| 189 | sys_msgctl | | int | | | | |
|
||||
| 190 | sys_msgget | | | | | | |
|
||||
| 191 | sys_msgrcv | | | | | | |
|
||||
|
||||
+2
-3
@@ -1,9 +1,8 @@
|
||||
MentOS 0.1
|
||||
MentOS 0.6.0
|
||||
|
||||
Welcome to the MentOS, the Mentoring Operating System.
|
||||
|
||||
If you want some help enter the "help" command into the cli.
|
||||
If you want some help enter the "man" command into the cli.
|
||||
|
||||
Bye,
|
||||
The Ment(OS) Team
|
||||
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
io ti vi bi!
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
../../root
|
||||
@@ -1 +0,0 @@
|
||||
tanto questa e' solo una prova :\
|
||||
@@ -1 +0,0 @@
|
||||
ciao mondo
|
||||
@@ -1,3 +0,0 @@
|
||||
come va ?
|
||||
AAA
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
bho, io credo bene eh eh eh
|
||||
@@ -1 +0,0 @@
|
||||
tanto questa e' solo una prova :\
|
||||
@@ -1 +0,0 @@
|
||||
io ti vi bi!
|
||||
@@ -0,0 +1,22 @@
|
||||
SYNOPSIS
|
||||
chmod MODE FILE
|
||||
|
||||
DESCRIPTION
|
||||
chmod changes the file mode bits of the given file according to mode, which
|
||||
must be an octal number representing the bit pattern for the new mode bits.
|
||||
|
||||
The numeric mode is from one to four octal digits (0-7), derived by adding
|
||||
up the bits with values 4, 2, and 1. Omitted digits are assumed to be
|
||||
leading zeros. The first digit selects the set user ID (4) and set group
|
||||
ID (2) and restricted deletion or sticky (1) attributes. The second digit
|
||||
selects permissions for the user who owns the file: read (4), write (2),
|
||||
and execute (1); the third selects permissions for other users in the file's
|
||||
group, with the same values; and the fourth for other users not in the
|
||||
file's group, with the same values.
|
||||
|
||||
chmod never changes the permissions of symbolic links; the chmod system call
|
||||
cannot change their permissions.
|
||||
|
||||
EXAMPLES
|
||||
chmod 555 executable
|
||||
Changes the mode bits of executable to r-xr-xr-x.
|
||||
@@ -0,0 +1,19 @@
|
||||
SYNOPSIS
|
||||
chown [OWNER][:[GROUP]] FILE
|
||||
|
||||
DESCRIPTION
|
||||
chown changes the user and/or group ownership of the given file.
|
||||
If only a owner is given the file's group is not changed. If the owner
|
||||
is followed by a colon and a group name (or numeric group ID), the group
|
||||
ownership is changed as well. If the colon and group are given, but the
|
||||
owner is omitted, only the group of the file is changed.
|
||||
|
||||
chown never changes the ownership of symbolic links; the chown system call
|
||||
cannot change their ownership.
|
||||
|
||||
EXAMPLES
|
||||
chown root /u
|
||||
Change the owner of /u to "root".
|
||||
|
||||
chown root:staff /u
|
||||
Likewise, but also change its group to "staff".
|
||||
@@ -0,0 +1,5 @@
|
||||
SYNOPSIS
|
||||
false
|
||||
|
||||
DESCRIPTION
|
||||
false sets the exit status to 1.
|
||||
@@ -0,0 +1,15 @@
|
||||
SYNOPSIS
|
||||
id [OPTIONS]
|
||||
|
||||
DESCRIPTION
|
||||
Print user and group information for the current process.
|
||||
|
||||
The following options are available:
|
||||
|
||||
-g, --group
|
||||
print only the effective group ID
|
||||
|
||||
-u, --user
|
||||
print only the effective user ID
|
||||
|
||||
--help display a help message and exit
|
||||
@@ -0,0 +1,8 @@
|
||||
SYNOPSIS
|
||||
mkdir DIRECTORY
|
||||
|
||||
DESCRIPTION
|
||||
Create the DIRECTORY, if it does not exist.
|
||||
|
||||
OPTIONS
|
||||
--help : shows command help.
|
||||
@@ -0,0 +1,13 @@
|
||||
SYNOPSIS
|
||||
more [FILE]
|
||||
|
||||
DESCRIPTION
|
||||
more is a filter for paging through text one screenful at a time.
|
||||
|
||||
OPTIONS
|
||||
-h, --help: shows command help.
|
||||
|
||||
KEY BINDINGS
|
||||
q Exit from more
|
||||
space Display next screen size
|
||||
return Display next line
|
||||
@@ -0,0 +1,8 @@
|
||||
SYNOPSIS
|
||||
rmdir DIRECTORY
|
||||
|
||||
DESCRIPTION
|
||||
Remove the DIRECTORY, if it is empty.
|
||||
|
||||
OPTIONS
|
||||
--help : shows command help.
|
||||
@@ -0,0 +1,5 @@
|
||||
SYNOPSIS
|
||||
showpid
|
||||
|
||||
DESCRIPTION
|
||||
showpid uses getppid() to print the ID of the parent process.
|
||||
@@ -2,6 +2,6 @@ set timeout=5
|
||||
set default=0
|
||||
|
||||
menuentry "MentOS" {
|
||||
multiboot /boot/kernel-bootloader.bin
|
||||
multiboot /boot/bootloader.bin
|
||||
boot
|
||||
}
|
||||
|
||||
+77
-67
@@ -1,70 +1,80 @@
|
||||
# Add the libc library.
|
||||
add_library(libc
|
||||
${PROJECT_SOURCE_DIR}/libc/src/stdio.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/ctype.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/string.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/stdlib.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/math.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/fcvt.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/time.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/strerror.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/termios.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/libgen.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/vsprintf.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/vscanf.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/pwd.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/grp.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sched.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/readline.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/setenv.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/assert.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/abort.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/io/mm_io.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/io/debug.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sys/ipc.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sys/unistd.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sys/errno.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sys/utsname.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sys/mman.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/sys/ioctl.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/creat.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getppid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getpid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/exit.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/setsid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getsid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/setpgid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getpgid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/setgid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getgid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/setuid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getuid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/fork.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/read.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/write.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/exec.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/nice.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/open.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/reboot.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/waitpid.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/chdir.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getcwd.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/close.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/stat.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/rmdir.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/mkdir.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/unlink.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/getdents.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/lseek.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/kill.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/signal.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/interval.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/symlink.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/unistd/readlink.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/libc_start.c
|
||||
${PROJECT_SOURCE_DIR}/libc/src/crt0.s
|
||||
# =============================================================================
|
||||
# LIBRARY
|
||||
# =============================================================================
|
||||
|
||||
# Add the library.
|
||||
add_library(
|
||||
libc
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/dup.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/stdio.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/ctype.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/string.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/stdlib.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/math.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/fcvt.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/time.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/strerror.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/termios.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/libgen.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/vsprintf.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/vscanf.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/pwd.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/grp.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sched.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/readline.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/setenv.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/assert.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/abort.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/io/mm_io.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/io/debug.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sys/ipc.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sys/unistd.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sys/errno.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sys/utsname.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sys/mman.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/sys/ioctl.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/chmod.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/chown.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/creat.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getppid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getpid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/exit.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/setsid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getsid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/setpgid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getpgid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/setgid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getgid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/setuid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getuid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/fork.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/read.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/write.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/exec.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/nice.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/open.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/reboot.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/waitpid.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/chdir.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getcwd.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/close.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/stat.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/rmdir.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/mkdir.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/unlink.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/getdents.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/lseek.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/kill.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/signal.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/interval.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/symlink.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/unistd/readlink.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/libc_start.c
|
||||
${CMAKE_SOURCE_DIR}/libc/src/crt0.S
|
||||
)
|
||||
|
||||
# Add the includes.
|
||||
target_include_directories(libc PRIVATE ${PROJECT_SOURCE_DIR}/libc/inc)
|
||||
target_include_directories(libc PUBLIC inc)
|
||||
|
||||
# Remove the 'lib' prefix.
|
||||
set_target_properties(libc PROPERTIES PREFIX "")
|
||||
set_target_properties(libc PROPERTIES PREFIX "")
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file array.h
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file assert.h
|
||||
/// @brief Defines the function and pre-processor macro for assertions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file ioctls.h
|
||||
/// @brief Input/Output ConTroL (IOCTL) numbers.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file stat.h
|
||||
/// @brief Defines the structure used by the functiosn fstat(), lstat(), and stat().
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file termios-struct.h
|
||||
/// @brief Definition of the `termios` structure.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file ctype.h
|
||||
/// @brief Functions related to character handling.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+2
-1
@@ -1,10 +1,11 @@
|
||||
/// @file fcntl.h
|
||||
/// @brief Headers of functions fcntl() and open().
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
#define O_ACCMODE 0003 ///< Bits defining the open mode
|
||||
#define O_RDONLY 00000000U ///< Open for reading only.
|
||||
#define O_WRONLY 00000001U ///< Open for writing only.
|
||||
#define O_RDWR 00000002U ///< Open for reading and writing.
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file fcvt.h
|
||||
/// @brief Declare the functions required to turn double values into a string.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file grp.h
|
||||
/// @brief Defines the structures and functions for managing groups.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file ansi_colors.h
|
||||
/// @brief List of ANSI colors.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file debug.h
|
||||
/// @brief Debugging primitives.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file mm_io.h
|
||||
/// @brief Memory Mapped IO functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file port_io.h
|
||||
/// @brief Byte I/O on ports prototypes.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file libgen.h
|
||||
/// @brief String routines.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "stddef.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file limits.h
|
||||
/// @brief OS numeric limits.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file math.h
|
||||
/// @brief Mathematical constants and functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file pwd.h
|
||||
/// @brief Contains the structure and functions for managing passwords.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file readline.h
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "stddef.h"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file ring_buffer.h
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file sched.h
|
||||
/// @brief Structures and functions for managing the scheduler.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/types.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file signal.h
|
||||
/// @brief Signals definition.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file stdarg.h
|
||||
/// @brief Contains the macros required to manage variable number of arguments.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file stdbool.h
|
||||
/// @brief Defines the boolean values.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+10
-3
@@ -1,6 +1,6 @@
|
||||
/// @file stddef.h
|
||||
/// @brief Define basic data types.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
@@ -37,10 +37,10 @@ typedef unsigned int ino_t;
|
||||
typedef unsigned int dev_t;
|
||||
|
||||
/// The type of user-id.
|
||||
typedef unsigned int uid_t;
|
||||
typedef int uid_t;
|
||||
|
||||
/// The type of group-id.
|
||||
typedef unsigned int gid_t;
|
||||
typedef int gid_t;
|
||||
|
||||
/// The type of offset.
|
||||
typedef long int off_t;
|
||||
@@ -72,6 +72,13 @@ typedef unsigned int pgprot_t;
|
||||
/// Counts the number of elements of an array.
|
||||
#define count_of(x) ((sizeof(x) / sizeof((x)[0])) / ((size_t)(!(sizeof(x) % sizeof((x)[0])))))
|
||||
|
||||
/// @brief Swaps two values.
|
||||
/// @details
|
||||
/// do { ... } while (0) allows to place multistatement operations, for
|
||||
/// instance, inside the following if stantement:
|
||||
/// if (condition)
|
||||
/// swap(var1, var2)
|
||||
/// which otherwise would be wrong.
|
||||
#define swap(a, b) \
|
||||
do { \
|
||||
typeof(a) temp = (a); \
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file stdint.h
|
||||
/// @brief Standard integer data-types.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file stdio.h
|
||||
/// @brief Standard I/0 functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file stdlib.h
|
||||
/// @brief Useful generic functions and macros.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file strerror.h
|
||||
/// @brief Contains the function that transfornms an errno into a string.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+2
-1
@@ -1,6 +1,6 @@
|
||||
/// @file string.h
|
||||
/// @brief String routines.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
@@ -174,6 +174,7 @@ char *strtok_r(char *str, const char *delim, char **saveptr);
|
||||
/// parsed token in buffer. The pointer `string` will be modified.
|
||||
/// @param string cursor used to parse the string, it will be modified.
|
||||
/// @param separators the list of separators we are using.
|
||||
/// @param offset the offset character from which we start extracting the next token.
|
||||
/// @param buffer the buffer where we save the parsed token.
|
||||
/// @param buflen the length of the buffer.
|
||||
/// @return 1 if we still have things to parse, 0 if we finished parsing.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file bitops.h
|
||||
/// @brief Bitmasks functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
@@ -15,13 +15,14 @@
|
||||
#define bit_flip_assign(V, B) ((V) ^= (1U << (B))) ///< Flips the given bit, permanently.
|
||||
#define bit_toggle_assign(V, B, C) ((C) ? bit_set_assign(V, B) : bit_clear_assign(V, B)) ///< Sets the given bit based on control bit C.
|
||||
|
||||
#define bitmask_set(V, M) ((V) | (M)) ///< Sets the bits identified by the mask.
|
||||
#define bitmask_clear(V, M) ((V) & ~(M)) ///< Clears the bits identified by the mask.
|
||||
#define bitmask_flip(V, M) ((V) ^ (M)) ///< Flips the bits identified by the mask.
|
||||
#define bitmask_check(V, M) ((V) & (M)) ///< Checks if the bits identified by the mask are all 1.
|
||||
#define bitmask_set_assign(V, M) ((V) |= (M)) ///< Sets the bits identified by the mask, permanently.
|
||||
#define bitmask_clear_assign(V, M) ((V) &= ~(M)) ///< Clears the bits identified by the mask, permanently.
|
||||
#define bitmask_flip_assign(V, M) ((V) ^= (M)) ///< Flips the bits identified by the mask, permanently.
|
||||
#define bitmask_set(V, M) ((V) | (M)) ///< Sets the bits identified by the mask.
|
||||
#define bitmask_clear(V, M) ((V) & ~(M)) ///< Clears the bits identified by the mask.
|
||||
#define bitmask_flip(V, M) ((V) ^ (M)) ///< Flips the bits identified by the mask.
|
||||
#define bitmask_check(V, M) ((V) & (M)) ///< Checks if the bits identified by the mask are all 1.
|
||||
#define bitmask_exact(V, M) (((V) & (M)) == (M)) ///< Checks if all the bits identified by the mask are all 1.
|
||||
#define bitmask_set_assign(V, M) ((V) |= (M)) ///< Sets the bits identified by the mask, permanently.
|
||||
#define bitmask_clear_assign(V, M) ((V) &= ~(M)) ///< Clears the bits identified by the mask, permanently.
|
||||
#define bitmask_flip_assign(V, M) ((V) ^= (M)) ///< Flips the bits identified by the mask, permanently.
|
||||
|
||||
/// @brief Finds the first bit at zero, starting from the less significative bit.
|
||||
/// @param value the value we need to analyze.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file dirent.h
|
||||
/// @brief Functions used to manage directories.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file errno.h
|
||||
/// @brief System call errors definition.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file ioctl.h
|
||||
/// @brief Input/Output ConTroL (IOCTL) functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file ipc.h
|
||||
/// @brief Inter-Process Communication (IPC) structures.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file kernel_levels.h
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file list_head.h
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/// @file list_head_algorithm.h
|
||||
/// @author Enrico Fraccaroli (enry.frak@gmail.com)
|
||||
/// @brief Some general algorithm that might come in handy while using list_head.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
/// @file mman.h
|
||||
/// @author Enrico Fraccaroli (enry.frak@gmail.com)
|
||||
/// @brief Functions for managing mappings in virtual address space.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file msg.h
|
||||
/// @brief Definition of structure for managing message queues.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file reboot.h
|
||||
/// @brief Defines the values required to issue a reboot.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file sem.h
|
||||
/// @brief Definition of structure for managing semaphores.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file shm.h
|
||||
/// @brief Definition of structure for managing shared memories.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file stat.h
|
||||
/// @brief Stat functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file types.h
|
||||
/// @brief Collection of Kernel datatype
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+75
-9
@@ -1,6 +1,6 @@
|
||||
/// @file unistd.h
|
||||
/// @brief Functions used to manage files.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
@@ -61,7 +61,7 @@ int unlink(const char *path);
|
||||
int symlink(const char *linkname, const char *path);
|
||||
|
||||
/// @brief Read the symbolic link, if present.
|
||||
/// @param file the file for which we want to read the symbolic link information.
|
||||
/// @param path the file for which we want to read the symbolic link information.
|
||||
/// @param buffer the buffer where we will store the symbolic link path.
|
||||
/// @param bufsize the size of the buffer.
|
||||
/// @return The number of read characters on success, -1 otherwise and errno is set to indicate the error.
|
||||
@@ -106,26 +106,48 @@ pid_t getpgid(pid_t pid);
|
||||
/// @return returns zero. On error, -1 is returned, and errno is set appropriately.
|
||||
int setpgid(pid_t pid, pid_t pgid);
|
||||
|
||||
///@brief returns the group ID of the calling process.
|
||||
///@brief returns the real group ID of the calling process.
|
||||
///@return GID of the current process
|
||||
extern pid_t getgid(void);
|
||||
extern gid_t getgid(void);
|
||||
|
||||
///@brief sets the effective group ID of the calling process.
|
||||
///@param pid process identifier to
|
||||
///@brief returns the effective group ID of the calling process.
|
||||
///@return GID of the current process
|
||||
extern gid_t getegid(void);
|
||||
|
||||
///@brief sets the group IDs of the calling process.
|
||||
///@param gid the Group ID to set
|
||||
///@return On success, zero is returned.
|
||||
/// Otherwise returns -1 with errno set to :EINVAL or EPERM
|
||||
extern int setgid(pid_t pid);
|
||||
extern int setgid(gid_t gid);
|
||||
|
||||
///@brief Returns the User ID of the calling process.
|
||||
///@brief sets the real and effective group IDs of the calling process.
|
||||
///@param rgid the new real Group ID.
|
||||
///@param egid the effective real Group ID.
|
||||
///@return On success, zero is returned.
|
||||
/// Otherwise returns -1 with errno set EPERM
|
||||
extern int setregid(gid_t rgid, gid_t egid);
|
||||
|
||||
///@brief Returns the real User ID of the calling process.
|
||||
///@return User ID of the current process.
|
||||
extern uid_t getuid(void);
|
||||
|
||||
///@brief Sets the effective User ID of the calling process.
|
||||
///@brief Returns the effective User ID of the calling process.
|
||||
///@return User ID of the current process.
|
||||
extern uid_t geteuid(void);
|
||||
|
||||
///@brief Sets the User IDs of the calling process.
|
||||
///@param uid the new User ID.
|
||||
///@return On success, zero is returned.
|
||||
/// Otherwise returns -1 with errno set to :EINVAL or EPERM
|
||||
extern int setuid(uid_t uid);
|
||||
|
||||
///@brief Sets the effective and real User IDs of the calling process.
|
||||
///@param ruid the new real User ID.
|
||||
///@param euid the effective real User ID.
|
||||
///@return On success, zero is returned.
|
||||
/// Otherwise returns -1 with errno set to EPERM
|
||||
extern int setreuid(uid_t ruid, uid_t euid);
|
||||
|
||||
/// @brief Returns the parent process ID (PPID) of the calling process.
|
||||
/// @return pid_t parent process identifier.
|
||||
extern pid_t getppid(void);
|
||||
@@ -253,6 +275,12 @@ int fchdir(int fd);
|
||||
/// appropriately.
|
||||
ssize_t getdents(int fd, dirent_t *dirp, unsigned int count);
|
||||
|
||||
/// @brief Return a new file descriptor
|
||||
/// @param fd The fd pointing to the opened file.
|
||||
/// @return On success, a new file descriptor is returned.
|
||||
/// On error, -1 is returned, and errno is set appropriately.
|
||||
int dup(int fd);
|
||||
|
||||
/// @brief Send signal to calling thread after desired seconds.
|
||||
/// @param seconds the amount of seconds.
|
||||
/// @return If there is a previous alarm() request with time remaining, alarm()
|
||||
@@ -260,3 +288,41 @@ ssize_t getdents(int fd, dirent_t *dirp, unsigned int count);
|
||||
/// previous request would have generated a SIGALRM signal. Otherwise, alarm()
|
||||
/// shall return 0.
|
||||
unsigned alarm(int seconds);
|
||||
|
||||
/// @brief Change the file's mode bits.
|
||||
/// @param pathname The pathname of the file to change mode.
|
||||
/// @param mode The mode bits to set.
|
||||
/// @return On success, 0 is returned.
|
||||
/// On error, -1 is returned, and errno is set appropriately.
|
||||
int chmod(const char *pathname, mode_t mode);
|
||||
|
||||
/// @brief Change the file's mode bits.
|
||||
/// @param fd The fd pointing to the opened file.
|
||||
/// @param mode The mode bits to set.
|
||||
/// @return On success, 0 is returned.
|
||||
/// On error, -1 is returned, and errno is set appropriately.
|
||||
int fchmod(int fd, mode_t mode);
|
||||
|
||||
/// @brief Change the owner and group of a file.
|
||||
/// @param pathname The pathname of the file to change.
|
||||
/// @param owner The new owner to set.
|
||||
/// @param owner The new group to set.
|
||||
/// @return On success, 0 is returned.
|
||||
/// On error, -1 is returned, and errno is set appropriately.
|
||||
int chown(const char *pathname, uid_t owner, gid_t group);
|
||||
|
||||
/// @brief Change the owner and group of a file.
|
||||
/// @param fd The fd pointing to the opened file.
|
||||
/// @param owner The new owner to set.
|
||||
/// @param owner The new group to set.
|
||||
/// @return On success, 0 is returned.
|
||||
/// On error, -1 is returned, and errno is set appropriately.
|
||||
int fchown(int fd, uid_t owner, gid_t group);
|
||||
|
||||
/// @brief Change the owner and group of a file.
|
||||
/// @param pathname The pathname of the file to change.
|
||||
/// @param owner The new owner to set.
|
||||
/// @param owner The new group to set.
|
||||
/// @return On success, 0 is returned.
|
||||
/// On error, -1 is returned, and errno is set appropriately.
|
||||
int lchown(const char *pathname, uid_t owner, gid_t group);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file utsname.h
|
||||
/// @brief Functions used to provide information about the machine & OS.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file wait.h
|
||||
/// @brief Event management functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file syscall_types.h
|
||||
/// @brief System Call numbers.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file termios.h
|
||||
/// @brief Defines the termios functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file time.h
|
||||
/// @brief Time-related functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#pragma once
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file abort.c
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/unistd.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file assert.c
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "assert.h"
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
.extern main
|
||||
.extern __libc_start_main
|
||||
.global _start
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# SECTION (text)
|
||||
# -----------------------------------------------------------------------------
|
||||
.text
|
||||
_start: # _start is the entry point known to the linker
|
||||
mov $0, %ebp # Set ebp to 0 as x86 programs require
|
||||
push $main
|
||||
call __libc_start_main # Call the libc initialization function.
|
||||
mov %eax, %ebx # Move `main` return value to ebx.
|
||||
mov $1, %eax # Call the `exit` function by using `int 80` (i.e., a system call)
|
||||
int $0x80
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file ctype.c
|
||||
/// @brief Functions related to character handling.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "ctype.h"
|
||||
|
||||
+4
-1
@@ -1,7 +1,8 @@
|
||||
/// @file fcvt.c
|
||||
/// @brief Define the functions required to turn double values into a string.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
//! @cond Doxygen_Suppress
|
||||
|
||||
#include "fcvt.h"
|
||||
#include "math.h"
|
||||
@@ -102,3 +103,5 @@ void fcvtbuf(double arg, int decimals, int *decpt, int *sign, char *buf, unsigne
|
||||
{
|
||||
cvt(arg, decimals, decpt, sign, buf, buf_size, 0);
|
||||
}
|
||||
|
||||
/// @endcond
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file grp.c
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "grp.h"
|
||||
|
||||
+19
-13
@@ -1,6 +1,6 @@
|
||||
/// @file debug.c
|
||||
/// @brief Debugging primitives.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "io/debug.h"
|
||||
@@ -16,18 +16,12 @@
|
||||
/// Determines the log level.
|
||||
static int max_log_level = LOGLEVEL_DEBUG;
|
||||
|
||||
void dbg_putchar(char c)
|
||||
{
|
||||
outportb(SERIAL_COM1, (unsigned char)c);
|
||||
}
|
||||
|
||||
void dbg_puts(const char *s)
|
||||
{
|
||||
while ((*s) != 0) {
|
||||
dbg_putchar(*s++);
|
||||
}
|
||||
}
|
||||
|
||||
/// @brief Prints the correct header for the given debug level.
|
||||
/// @param file the file origin of the debug message.
|
||||
/// @param fun the function where the debug message was called.
|
||||
/// @param line the line in the file where debug message was called.
|
||||
/// @param log_level the log level.
|
||||
/// @param header the header we want to show.
|
||||
static inline void __debug_print_header(const char *file, const char *fun, int line, short log_level, char *header)
|
||||
{
|
||||
// "EMERG ", "ALERT ", "CRIT ", "ERR ", "WARNING", "NOTICE ", "INFO ", "DEBUG ", "DEFAULT",
|
||||
@@ -75,6 +69,18 @@ static inline void __debug_print_header(const char *file, const char *fun, int l
|
||||
}
|
||||
}
|
||||
|
||||
void dbg_putchar(char c)
|
||||
{
|
||||
outportb(SERIAL_COM1, (unsigned char)c);
|
||||
}
|
||||
|
||||
void dbg_puts(const char *s)
|
||||
{
|
||||
while ((*s) != 0) {
|
||||
dbg_putchar(*s++);
|
||||
}
|
||||
}
|
||||
|
||||
void set_log_level(int level)
|
||||
{
|
||||
if ((level >= LOGLEVEL_EMERG) && (level <= LOGLEVEL_DEBUG)) {
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file mm_io.c
|
||||
/// @brief Memory Mapped IO functions implementation.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "io/mm_io.h"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file libc_start.c
|
||||
/// @brief Contains the programs initialization procedure.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/unistd.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file libgen.c
|
||||
/// @brief String routines.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "libgen.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file math.c
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "math.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file pwd.c
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "pwd.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file sched.c
|
||||
/// @brief Function for managing scheduler.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "system/syscall_types.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file setenv.c
|
||||
/// @brief Defines the functions used to manipulate the environmental variables.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/errno.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file stdio.c
|
||||
/// @brief Standard I/0 functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/errno.h"
|
||||
|
||||
+41
-17
@@ -1,6 +1,6 @@
|
||||
/// @file stdlib.c
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "stddef.h"
|
||||
@@ -13,25 +13,50 @@
|
||||
/// malloc(), calloc() or realloc().
|
||||
#define MALLOC_MAGIC_NUMBER 0x600DC0DE
|
||||
|
||||
/// @brief A structure that holds the information about an allocated chunk of
|
||||
/// memory through malloc.
|
||||
typedef struct {
|
||||
/// @brief A magic number that is used to check if the passed pointer is
|
||||
/// actually a malloc allocated memory.
|
||||
unsigned magic;
|
||||
/// @brief The size of the allocated memory, useful when doing a realloc.
|
||||
size_t size;
|
||||
} malloc_header_t;
|
||||
|
||||
/// @brief Extract the actual pointer to the allocated memory from the malloc header.
|
||||
/// @param header the header we are using.
|
||||
/// @return a pointer to the allocated memory.
|
||||
static inline void *malloc_header_to_ptr(malloc_header_t *header)
|
||||
{
|
||||
return (void *)((char *)header + sizeof(malloc_header_t));
|
||||
}
|
||||
|
||||
/// @brief Extract the malloc header, from the actual pointer to the allocated memory.
|
||||
/// @param ptr the pointer we use.
|
||||
/// @return the malloc header.
|
||||
static inline malloc_header_t *ptr_to_malloc_header(void *ptr)
|
||||
{
|
||||
return (malloc_header_t *)((char *)ptr - sizeof(malloc_header_t));
|
||||
}
|
||||
|
||||
void *malloc(unsigned int size)
|
||||
{
|
||||
assert(size && "Zero size requested.");
|
||||
size_t *ptr;
|
||||
// Compute the real size we need to allocate.
|
||||
size_t real_size = size + sizeof(malloc_header_t);
|
||||
if (size == 0) {
|
||||
return NULL;
|
||||
}
|
||||
void *ptr;
|
||||
// Allocate the memory.
|
||||
__inline_syscall1(ptr, brk, real_size);
|
||||
__inline_syscall1(ptr, brk, size + sizeof(malloc_header_t));
|
||||
// Check for errors from the brk.
|
||||
if (ptr == 0) {
|
||||
return NULL;
|
||||
}
|
||||
// Initialize the malloc header.
|
||||
malloc_header_t *malloc_header = (malloc_header_t *)ptr;
|
||||
malloc_header->magic = MALLOC_MAGIC_NUMBER;
|
||||
malloc_header->size = size;
|
||||
malloc_header_t *header = (malloc_header_t *)ptr;
|
||||
header->magic = MALLOC_MAGIC_NUMBER;
|
||||
header->size = size;
|
||||
// Return the allocated memory.
|
||||
return (void *)((char *)ptr + sizeof(malloc_header_t));
|
||||
return malloc_header_to_ptr(header);
|
||||
}
|
||||
|
||||
void *calloc(size_t num, size_t size)
|
||||
@@ -57,11 +82,11 @@ void *realloc(void *ptr, size_t size)
|
||||
return NULL;
|
||||
}
|
||||
// Get the malloc header.
|
||||
malloc_header_t *malloc_header = (malloc_header_t *)((char *)ptr - sizeof(malloc_header_t));
|
||||
malloc_header_t *header = ptr_to_malloc_header(ptr);
|
||||
// Check the header.
|
||||
assert(malloc_header->magic == MALLOC_MAGIC_NUMBER && "This is not a valid pointer.");
|
||||
assert(header->magic == MALLOC_MAGIC_NUMBER && "This is not a valid pointer.");
|
||||
// Get the old size.
|
||||
size_t old_size = malloc_header->size;
|
||||
size_t old_size = header->size;
|
||||
// Create the new pointer.
|
||||
void *newp = malloc(size);
|
||||
memset(newp, 0, size);
|
||||
@@ -73,14 +98,13 @@ void *realloc(void *ptr, size_t size)
|
||||
void free(void *ptr)
|
||||
{
|
||||
// Get the malloc header.
|
||||
malloc_header_t *malloc_header = (malloc_header_t *)((char *)ptr - sizeof(malloc_header_t));
|
||||
malloc_header_t *header = ptr_to_malloc_header(ptr);
|
||||
// Check the header.
|
||||
assert(malloc_header->magic == MALLOC_MAGIC_NUMBER && "This is not a valid pointer.");
|
||||
// Get the real pointer.
|
||||
assert(header->magic == MALLOC_MAGIC_NUMBER && "This is not a valid pointer.");
|
||||
ptr = (char *)ptr - sizeof(malloc_header_t);
|
||||
// Call the free.
|
||||
int _res;
|
||||
__inline_syscall1(_res, brk, ptr);
|
||||
__inline_syscall1(_res, brk, (char *)header);
|
||||
}
|
||||
|
||||
/// Seed used to generate random numbers.
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file strerror.c
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "strerror.h"
|
||||
|
||||
+8
-8
@@ -1,6 +1,6 @@
|
||||
/// @file string.c
|
||||
/// @brief String routines.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "string.h"
|
||||
@@ -221,7 +221,7 @@ char *strpbrk(const char *string, const char *control)
|
||||
int tokenize(const char *string, char *separators, size_t *offset, char *buffer, ssize_t buflen)
|
||||
{
|
||||
// If we reached the end of the parsed string, stop.
|
||||
if (string[*offset] == 0) {
|
||||
if ((*offset >= buflen) || (string[*offset] == 0)) {
|
||||
return 0;
|
||||
}
|
||||
// Keep copying character until we either reach 1) the end of the buffer, 2) a
|
||||
@@ -238,7 +238,8 @@ int tokenize(const char *string, char *separators, size_t *offset, char *buffer,
|
||||
}
|
||||
// Save the character.
|
||||
*buffer = string[*offset];
|
||||
// Advance the offset, decrese the available size in the buffer, and advance the buffer.
|
||||
// Advance the offset, decrese the available size in the buffer, and advance
|
||||
// the buffer.
|
||||
++(*offset), --buflen, ++buffer;
|
||||
} while ((buflen > 0) && (string[*offset] != 0));
|
||||
// Close the buffer.
|
||||
@@ -488,15 +489,14 @@ char *strcpy(char *dst, const char *src)
|
||||
size_t strlen(const char *s)
|
||||
{
|
||||
const char *it = s;
|
||||
while (*(++it) != 0) {}
|
||||
return ((it - s) < 0) ? 0 : (size_t)(it - s);
|
||||
for (; *it; it++);
|
||||
return (size_t)(it - s);
|
||||
}
|
||||
|
||||
size_t strnlen(const char *s, size_t count)
|
||||
{
|
||||
const char *it = s;
|
||||
while ((*(++it) != 0) && --count) {}
|
||||
return ((it - s) < 0) ? 0 : (size_t)(it - s);
|
||||
const char *p = memchr(s, 0, count);
|
||||
return p ? (size_t)(p-s) : count;
|
||||
}
|
||||
|
||||
int strcmp(const char *s1, const char *s2)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file errno.c
|
||||
/// @brief Stores the error number.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/errno.h"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file ioctl.c
|
||||
/// @brief Input/Output ConTroL (IOCTL) functions implementation.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/ioctl.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file ipc.c
|
||||
/// @brief Inter-Process Communication (IPC) system call implementation.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/ipc.h"
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
/// @file mman.c
|
||||
/// @author Enrico Fraccaroli (enry.frak@gmail.com)
|
||||
/// @brief Functions for managing mappings in virtual address space.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/mman.h"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file unistd.c
|
||||
/// @brief Functions used to manage files.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/unistd.h"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file utsname.c
|
||||
/// @brief Functions used to provide information about the machine & OS.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/utsname.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file termios.c
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "termios.h"
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/// @file time.c
|
||||
/// @brief Clock functions.
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "time.h"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/// @file chdir.c
|
||||
/// @brief
|
||||
/// @copyright (c) 2014-2023 This file is distributed under the MIT License.
|
||||
/// @copyright (c) 2014-2024 This file is distributed under the MIT License.
|
||||
/// See LICENSE.md for details.
|
||||
|
||||
#include "sys/unistd.h"
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user