summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/kernel/src/Json.cpp1
-rw-r--r--src/kernel/src/UserMgr.cpp23
-rw-r--r--src/kernel/src/UserProcessTeam.cpp7
-rw-r--r--src/kernel/src/UtfUtils.cpp2
-rw-r--r--src/libPOSIXWrapper/POSIXKit/POSIX.h24
-rw-r--r--src/libPOSIXWrapper/POSIXKit/unistd.h17
-rw-r--r--src/libPOSIXWrapper/src/POSIX.cpp6
-rw-r--r--src/libPThread/PThreadKit/Thread.h19
-rw-r--r--src/libPThread/PThreadKit/pthread.h11
-rw-r--r--src/libPThread/src/Thread.cpp2
-rw-r--r--src/libSoundSystem/SoundSystemKit/VirtualMixer.h6
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