diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/kernel/src/Json.cpp | 1 | ||||
| -rw-r--r-- | src/kernel/src/UserMgr.cpp | 23 | ||||
| -rw-r--r-- | src/kernel/src/UserProcessTeam.cpp | 7 | ||||
| -rw-r--r-- | src/kernel/src/UtfUtils.cpp | 2 | ||||
| -rw-r--r-- | src/libPOSIXWrapper/POSIXKit/POSIX.h | 24 | ||||
| -rw-r--r-- | src/libPOSIXWrapper/POSIXKit/unistd.h | 17 | ||||
| -rw-r--r-- | src/libPOSIXWrapper/src/POSIX.cpp | 6 | ||||
| -rw-r--r-- | src/libPThread/PThreadKit/Thread.h | 19 | ||||
| -rw-r--r-- | src/libPThread/PThreadKit/pthread.h | 11 | ||||
| -rw-r--r-- | src/libPThread/src/Thread.cpp | 2 | ||||
| -rw-r--r-- | src/libSoundSystem/SoundSystemKit/VirtualMixer.h | 6 |
11 files changed, 63 insertions, 55 deletions
diff --git a/src/kernel/src/Json.cpp b/src/kernel/src/Json.cpp index ca8b10d3..5cfd7c06 100644 --- a/src/kernel/src/Json.cpp +++ b/src/kernel/src/Json.cpp @@ -6,4 +6,3 @@ #include <NeKit/Json.h> namespace Kernel {} - diff --git a/src/kernel/src/UserMgr.cpp b/src/kernel/src/UserMgr.cpp deleted file mode 100644 index 358a96c2..00000000 --- a/src/kernel/src/UserMgr.cpp +++ /dev/null @@ -1,23 +0,0 @@ -// SPDX-License-Identifier: Apache-2.0 -// Copyright 2024-2026, Amlal El Mahrouss (amlal@nekernel.org) -// Licensed under the Apache License, Version 2.0 (see LICENSE file) -// Official repository: https://github.com/ne-foss-org/kernel - -#include <KernelKit/FileMgr.h> -#include <KernelKit/HeapMgr.h> -#include <KernelKit/KPC.h> -#include <KernelKit/ThreadLocalStorage.h> -#include <KernelKit/UserMgr+User.h> -#include <NeKit/KString.h> -#include <NeKit/KernelPanic.h> -#include <NeKit/Utils.h> - -/// @file UserMgr+User.cpp -/// @brief Multi-user support. - -namespace Kernel { -namespace Detail { - struct UserPermissionControl; - struct UserPermissionElevator; -} // namespace Detail -} // namespace Kernel diff --git a/src/kernel/src/UserProcessTeam.cpp b/src/kernel/src/UserProcessTeam.cpp index 293fd45a..27ad73e7 100644 --- a/src/kernel/src/UserProcessTeam.cpp +++ b/src/kernel/src/UserProcessTeam.cpp @@ -7,7 +7,7 @@ namespace Kernel { UserProcessTeam::UserProcessTeam() { - for (SizeT i = 0U; i < this->mProcessList.Count(); ++i) { + for (SizeT i{}; i < kCPSProcessLimitPerTeam; ++i) { this->mProcessList[i] = UserProcess{}; this->mProcessList[i].PTime = 0; this->mProcessList[i].RTime = 0; @@ -15,7 +15,10 @@ UserProcessTeam::UserProcessTeam() { this->mProcessList[i].Status = ProcessStatusKind::kKilled; } - // se the cursor to zero. + // We dont know our team yet. + this->mTeamId = 0UL; + + // We dont have any running processes. this->mProcessCur = 0UL; } diff --git a/src/kernel/src/UtfUtils.cpp b/src/kernel/src/UtfUtils.cpp index 0698010c..dbf52840 100644 --- a/src/kernel/src/UtfUtils.cpp +++ b/src/kernel/src/UtfUtils.cpp @@ -8,6 +8,7 @@ /// @author Amlal El Mahrouss (amlal@nekernel.org) namespace Kernel { + Size urt_string_len(const Utf8Char* str) { if (!str) return 0; @@ -58,4 +59,5 @@ Int32 urt_copy_memory(const VoidPtr src, VoidPtr dst, Size len) { return index; } + } // namespace Kernel diff --git a/src/libPOSIXWrapper/POSIXKit/POSIX.h b/src/libPOSIXWrapper/POSIXKit/POSIX.h new file mode 100644 index 00000000..ea2067b3 --- /dev/null +++ b/src/libPOSIXWrapper/POSIXKit/POSIX.h @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright 2026, Amlal El Mahrouss (amlal@nekernel.org) +// Licensed under the Apache License, Version 2.0 (see LICENSE file) +// Official repository: https://github.com/ne-foss-org/nekernel + +#ifndef LIBPOSIX_POSIXKIT_POSIX_H +#define LIBPOSIX_POSIXKIT_POSIX_H + +#include <libSystem/SystemKit/System.h> + +/// @file POSIX.h +/// @brief POSIX definitions header for the NeSystem. + +/// @brief Please use these macros to specify whether your function is thread safe or not. +#define PTHREAD_UNSAFE __THREAD_UNSAFE +#define PTHREAD_SAFE __THREAD_SAFE + +#define _POSIX_SOURCE __POSIX_SOURCE__ +#define _XOPEN_SOURCE __XOPEN_SOURCE__ + +PTHREAD_UNSAFE IMPORT_C SInt64 write(SizeT count, SInt32 fd, Void* data, SizeT sz); +PTHREAD_UNSAFE IMPORT_C SInt64 read(SizeT count, SInt32 fd, Void* data, SizeT sz); + +#endif // LIBPOSIX_POSIXKIT_POSIX_H diff --git a/src/libPOSIXWrapper/POSIXKit/unistd.h b/src/libPOSIXWrapper/POSIXKit/unistd.h index 0e133c89..96701f35 100644 --- a/src/libPOSIXWrapper/POSIXKit/unistd.h +++ b/src/libPOSIXWrapper/POSIXKit/unistd.h @@ -3,19 +3,6 @@ // Licensed under the Apache License, Version 2.0 (see LICENSE file) // Official repository: https://github.com/ne-foss-org/nekernel -#ifndef LIBPOSIX_POSIXKIT_UNISTD_H -#define LIBPOSIX_POSIXKIT_UNISTD_H +#pragma once -#include <libSystem/SystemKit/System.h> - -/// @file Unistd.h -/// @brief POSIX Standard Header for NeKernel. - -#define _POSIX_SOURCE __POSIX_SOURCE__ -#define _XOPEN_SOURCE __XOPEN_SOURCE__ - -IMPORT_C SInt64 write(SizeT count, SInt32 fd, Void* data, SizeT sz); - -IMPORT_C SInt64 read(SizeT count, SInt32 fd, Void* data, SizeT sz); - -#endif // LIBPOSIX_POSIXKIT_UNISTD_H +#include <libPOSIXWrapper/POSIXKit/POSIX.h> diff --git a/src/libPOSIXWrapper/src/POSIX.cpp b/src/libPOSIXWrapper/src/POSIX.cpp new file mode 100644 index 00000000..98db8e51 --- /dev/null +++ b/src/libPOSIXWrapper/src/POSIX.cpp @@ -0,0 +1,6 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright 2026, Amlal El Mahrouss (amlal@nekernel.org) +// Licensed under the Apache License, Version 2.0 (see LICENSE file) +// Official repository: https://github.com/ne-foss-org/nekernel + +#include <libPOSIXWrapper/POSIXKit/POSIX.h> diff --git a/src/libPThread/PThreadKit/Thread.h b/src/libPThread/PThreadKit/Thread.h index de8efe8a..7e528ab2 100644 --- a/src/libPThread/PThreadKit/Thread.h +++ b/src/libPThread/PThreadKit/Thread.h @@ -8,16 +8,15 @@ #include <libPOSIXWrapper/POSIXKit/unistd.h> -/// @brief Please use these macros to specify whether your function is thread safe or not. -#define PTHREAD_UNSAFE __THREAD_UNSAFE -#define PTHREAD_SAFE __THREAD_SAFE +/// @internal Internal type, please do not rely on it for multi-platform builds. +typedef ThreadRef pthread_ref_t; -PTHREAD_SAFE SInt32 pthread_create(_Output ThreadRef* thread, VoidPtr attr, - VoidPtr (*start_routine)(VoidPtr), VoidPtr arg); -PTHREAD_SAFE SInt32 pthread_join(ThreadRef thread, VoidPtr* retval); -PTHREAD_SAFE SInt32 pthread_exit(SInt32 retval); -PTHREAD_SAFE SInt32 pthread_detach(ThreadRef thread); -PTHREAD_SAFE ThreadRef pthread_self(Void); -PTHREAD_SAFE SInt32 pthread_yield(void); +PTHREAD_SAFE IMPORT_C SInt32 pthread_create(_Output pthread_ref_t* thread, VoidPtr attr, + VoidPtr (*start_routine)(VoidPtr), VoidPtr arg); +PTHREAD_SAFE IMPORT_C SInt32 pthread_join(pthread_ref_t thread, VoidPtr* retval); +PTHREAD_SAFE IMPORT_C SInt32 pthread_exit(SInt32 retval); +PTHREAD_SAFE IMPORT_C SInt32 pthread_detach(pthread_ref_t thread); +PTHREAD_SAFE IMPORT_C pthread_ref_t pthread_self(Void); +PTHREAD_SAFE IMPORT_C SInt32 pthread_yield(void); #endif // LIBPOSIX_POSIXKIT_THREAD_H diff --git a/src/libPThread/PThreadKit/pthread.h b/src/libPThread/PThreadKit/pthread.h new file mode 100644 index 00000000..2448c458 --- /dev/null +++ b/src/libPThread/PThreadKit/pthread.h @@ -0,0 +1,11 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright 2026, Amlal El Mahrouss (amlal@nekernel.org) +// Licensed under the Apache License, Version 2.0 (see LICENSE file) +// Official repository: https://github.com/ne-foss-org/nekernel + +#ifndef LIBPOSIX_POSIXKIT_PTHREAD_H +#define LIBPOSIX_POSIXKIT_PTHREAD_H + +#include <libPThread/ThreadKit/Thread.h> + +#endif diff --git a/src/libPThread/src/Thread.cpp b/src/libPThread/src/Thread.cpp index c1799d9c..5324d979 100644 --- a/src/libPThread/src/Thread.cpp +++ b/src/libPThread/src/Thread.cpp @@ -26,7 +26,7 @@ PTHREAD_SAFE SInt32 pthread_join(ThreadRef thread, VoidPtr* retval) { if (!ret) return -1; - *ret = ThrJoinThread(thread); + *ret = ThrJoinThread(thread); return 0; } diff --git a/src/libSoundSystem/SoundSystemKit/VirtualMixer.h b/src/libSoundSystem/SoundSystemKit/VirtualMixer.h index 4a46eb73..c0883ae9 100644 --- a/src/libSoundSystem/SoundSystemKit/VirtualMixer.h +++ b/src/libSoundSystem/SoundSystemKit/VirtualMixer.h @@ -11,9 +11,9 @@ namespace SoundSystem { - struct VirtualMixer; - struct VirtualSource; - struct VirtualVolume; +struct VirtualMixer; +struct VirtualSource; +struct VirtualVolume; } // namespace SoundSystem |
