chore(ViperOS): 落库内核侧进行中的改动(26 文件,+1573/-1805)

内容由用户产出,本次仅代为提交、未做任何语义修改;含 static 修饰符前置迁移等(新增 static 前缀 16 行)。提交消息为中性描述——如需更精确的说明请 amend。
This commit is contained in:
TermiNexus committed 2026-09-28 15:24:52 +08:00
1 parent 1c3fcd6e1e
commit dcb7c5c2c0
26 files changed
+1558 -1790

No files matched your search

+9 -9
View File
@@ -9,10 +9,10 @@ define MAX_DIRECTORIES = 16
define PATH_BUFFER_SIZE = 256
directories: [MAX_DIRECTORIES]devfs_directory = [0]
directory_count: static int = 0
static directory_count: int = 0
files: [MAX_DEVICE_FILES]devfs_file = [0]
file_count: static int = 0
static file_count: int = 0
class _fd_table:
@@ -88,7 +88,7 @@ virtual class devfs_file:
@staticmethod
def list_in_dir(dir_ptr: devfs_directory*, buffer: str, size: uint32, pos: int) -> int:
for f in range(file_count):
filep: devfs_file* = c.Addr(files[f])
filep: devfs_file* = &files[f]
if filep.parent_dir == dir_ptr:
name_len: int = string.strlen(filep.name)
if pos + name_len + 1 > size:
@@ -124,7 +124,7 @@ class _DevFSObject:
if directory_count >= MAX_DIRECTORIES: return None
if string.strlen(dir_name) >= 64: return None
new_dir: devfs_directory* = c.Addr(directories[directory_count])
new_dir: devfs_directory* = &directories[directory_count]
directory_count += 1
string.strcpy(new_dir.name, dir_name)
@@ -137,7 +137,7 @@ class _DevFSObject:
if not path or string.samestr(path, "/"): return None
if not self.root_directory:
self.root_directory = c.Addr(directories[directory_count])
self.root_directory = &directories[directory_count]
directory_count += 1
string.strcpy(self.root_directory.name, "")
self.root_directory.parent = None
@@ -204,7 +204,7 @@ class _DevFSObject:
file_ptr.parent_dir = dir_ptr
files[file_count] = file_ptr
else:
new_file: devfs_file* = c.Addr(files[file_count])
new_file: devfs_file* = &files[file_count]
string.strcpy(new_file.name, file_name)
new_file.private_data = private_data
new_file.parent_dir = dir_ptr
@@ -336,16 +336,16 @@ def serial0_read(self: rawptr, fd: int, buffer: rawptr, size: uint32) -> int:
def serial0_write(self: rawptr, fd: int, buffer: const rawptr, size: uint32) -> int:
serial.puts("[serial0] write\n")
serial.puts(str(buffer))
serial.puts(buffer)
serial.puts("\n")
return size
def devfs_register_serial0() -> int:
global serial0_file
serial0_file = devfs_file()
serial0_file.open = serial0_open
serial0_file.open = serial0_open
serial0_file.close = serial0_close
serial0_file.read = serial0_read
serial0_file.read = serial0_read
serial0_file.write = serial0_write
return devfs_create_file("/dev/serial0", serial0_file, None)