History log of /DragonOS/kernel/src/syscall/ (Results 76 – 100 of 115)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
c757940b31-Aug-2023 YJwu2023 <yujianwu2019@gmail.com>

优化makefile (#352)

f5df0e7928-Aug-2023 LoGin <longjin@DragonOS.org>

解决userbufferwriter的长度错误问题,并修复gettimeofday的pagefault问题 (#349)

* 解决userbufferwriter的长度错误问题,并修复gettimeofday的pagefault问题

ddb9d91727-Aug-2023 Xshine <gshine@m.scnu.edu.cn>

将 io 移动至 vfs 目录,并修正引用路径 (#339)

* 将 io 移动至 vfs 目录,并修正引用路径

* fix bug in makefile

9a367aa724-Aug-2023 LoGin <longjin@DragonOS.org>

添加github workflow,检查代码是否已经格式化 (#342)

* 添加github workflow,检查代码是否已经格式化

4537ffb721-Aug-2023 Chiichen <39649411+Chiichen@users.noreply.github.com>

实现了对用户空间传入指针抽象的UserBufferReader/Writer,来检验用户空间指针地址并提供一定的功能抽象 (#326)

* 构建了 Userbuffer 对用户空间传入的指针进行了抽象,并提供了读写操作

* 分成了Reader和Writer,增加了从地址读和写入到指定地址的功能

* 删除了多余的注释

* 增加了直接获取BufferWriter切片的函数

实现了对用户空间传入指针抽象的UserBufferReader/Writer,来检验用户空间指针地址并提供一定的功能抽象 (#326)

* 构建了 Userbuffer 对用户空间传入的指针进行了抽象,并提供了读写操作

* 分成了Reader和Writer,增加了从地址读和写入到指定地址的功能

* 删除了多余的注释

* 增加了直接获取BufferWriter切片的函数

* 通过 where 的一个 Trick 实现了 const generic 和后续功能

* 替换为了 core::slice::align_to 实现&[u8}转&[T]

* 移除了 userbuffer.rs

* 提供了独立获取缓冲区中不同偏移量位置的数据的函数

* 替换了部分系统调用(还未测试

* 简化了代码

* 修复内存越界的bug

---------

Co-authored-by: longjin <longjin@RinGoTek.cn>

show more ...


/DragonOS/.vscode/settings.json
/DragonOS/docs/community/ChangeLog/V0.1.x/V0.1.8.md
/DragonOS/docs/community/ChangeLog/index.rst
/DragonOS/docs/community/contact/index.rst
/DragonOS/docs/index.rst
/DragonOS/docs/introduction/build_system.md
/DragonOS/docs/introduction/features.md
/DragonOS/docs/introduction/mirrors.md
/DragonOS/docs/kernel/libs/index.rst
/DragonOS/docs/kernel/libs/lib_ui/scm.md
/DragonOS/docs/kernel/libs/lib_ui/textui.md
/DragonOS/kernel/src/arch/x86_64/mm/mod.rs
/DragonOS/kernel/src/common/atomic.h
/DragonOS/kernel/src/common/printk.h
/DragonOS/kernel/src/common/time.h
/DragonOS/kernel/src/driver/interrupt/apic/apic.c
/DragonOS/kernel/src/driver/tty/tty_device.rs
/DragonOS/kernel/src/driver/video/video.c
/DragonOS/kernel/src/driver/video/video.h
/DragonOS/kernel/src/head.S
/DragonOS/kernel/src/include/bindings/wrapper.h
/DragonOS/kernel/src/lib.rs
/DragonOS/kernel/src/libs/Makefile
/DragonOS/kernel/src/libs/lib_ui/font/binaries/spleen-8x16.raw_bytes
/DragonOS/kernel/src/libs/lib_ui/font/mod.rs
/DragonOS/kernel/src/libs/lib_ui/font/spleen_font.rs
/DragonOS/kernel/src/libs/lib_ui/mod.rs
/DragonOS/kernel/src/libs/lib_ui/screen_manager.h
/DragonOS/kernel/src/libs/lib_ui/screen_manager.rs
/DragonOS/kernel/src/libs/lib_ui/textui.h
/DragonOS/kernel/src/libs/lib_ui/textui.rs
/DragonOS/kernel/src/libs/lib_ui/textui_no_alloc.rs
/DragonOS/kernel/src/libs/mod.rs
/DragonOS/kernel/src/libs/printk.c
/DragonOS/kernel/src/libs/printk.rs
/DragonOS/kernel/src/libs/spinlock.rs
/DragonOS/kernel/src/main.c
/DragonOS/kernel/src/mm/mm.h
/DragonOS/kernel/src/mm/mod.rs
/DragonOS/kernel/src/mm/no_init.rs
mod.rs
user_access.rs
/DragonOS/tools/.gdbinit
/DragonOS/tools/bootstrap.sh
/DragonOS/user/apps/about/about.c
/DragonOS/user/apps/shell/cmd.c
/DragonOS/user/apps/shell/shell.c
/DragonOS/user/libs/libc/src/unistd.c
67b4818814-Aug-2023 houmkh <1119644616@qq.com>

移动fstat (#330)

* 移动fstat

6d81180b08-Aug-2023 LoGin <longjin@DragonOS.org>

移植sqlite3,并修复一些bug (#323)

* bugfix: 程序加载器映射内存时,计算要映射的大小不正确的问题。

* 修正brk系统调用不符合规范的地方

* bugfix: 修正fat文件系统未能正确的扩展文件大小的bug

* 增加fcntl系统调用

* 移植sqlite3

be63f3b205-Aug-2023 houmkh <1119644616@qq.com>

实现系统调用Fstat (#295)

* fstat

* 修改syscall.rs中的verify_area

40fe15e022-Jul-2023 LoGin <longjin@DragonOS.org>

新的内存管理模块 (#303)

&emsp;&emsp;实现了具有优秀架构设计的新的内存管理模块,对内核空间和用户空间的内存映射、分配、释放、管理等操作进行了封装,使得内核开发者可以更加方便地进行内存管理。

&emsp;&emsp;内存管理模块主要由以下类型的组件组成:

- **硬件抽象层(MemoryManagementArch)** - 提供对具体处理器架构的抽象,使得内存管理

新的内存管理模块 (#303)

&emsp;&emsp;实现了具有优秀架构设计的新的内存管理模块,对内核空间和用户空间的内存映射、分配、释放、管理等操作进行了封装,使得内核开发者可以更加方便地进行内存管理。

&emsp;&emsp;内存管理模块主要由以下类型的组件组成:

- **硬件抽象层(MemoryManagementArch)** - 提供对具体处理器架构的抽象,使得内存管理模块可以在不同的处理器架构上运行
- **页面映射器(PageMapper)**- 提供对虚拟地址和物理地址的映射,以及页表的创建、填写、销毁、权限管理等操作。分为两种类型:内核页表映射器(KernelMapper)和用户页表映射器(位于具体的用户地址空间结构中)
- **页面刷新器(PageFlusher)** - 提供对页表的刷新操作(整表刷新、单页刷新、跨核心刷新)
- **页帧分配器(FrameAllocator)** - 提供对页帧的分配、释放、管理等操作。具体来说,包括BumpAllocator、BuddyAllocator
- **小对象分配器** - 提供对小内存对象的分配、释放、管理等操作。指的是内核里面的SlabAllocator (SlabAllocator的实现目前还没有完成)
- **MMIO空间管理器** - 提供对MMIO地址空间的分配、管理操作。(目前这个模块待进一步重构)
- **用户地址空间管理机制** - 提供对用户地址空间的管理。
- VMA机制 - 提供对用户地址空间的管理,包括VMA的创建、销毁、权限管理等操作
- 用户映射管理 - 与VMA机制共同作用,管理用户地址空间的映射
- **系统调用层** - 提供对用户空间的内存管理系统调用,包括mmap、munmap、mprotect、mremap等
- **C接口兼容层** - 提供对原有的C代码的接口,是的C代码能够正常运行。


除上面的新增内容以外,其它的更改内容:
- 新增二进制加载器,以及elf的解析器
- 解决由于local_irq_save、local_irq_restore函数的汇编不规范导致影响栈行为的bug。
- 解决local_irq_save未关中断的错误。
- 修复sys_gettimeofday对timezone参数的处理的bug

---------

Co-authored-by: kong <kongweichao@dragonos.org>

show more ...


/DragonOS/.vscode/settings.json
/DragonOS/Makefile
/DragonOS/README.md
/DragonOS/README_EN.md
/DragonOS/docs/community/contact/index.rst
/DragonOS/docs/introduction/build_system.md
/DragonOS/docs/introduction/features.md
/DragonOS/docs/introduction/index.rst
/DragonOS/docs/kernel/core_api/index.rst
/DragonOS/docs/kernel/memory_management/allocate-memory.md
/DragonOS/docs/kernel/memory_management/index.rst
/DragonOS/docs/kernel/memory_management/intro.md
/DragonOS/docs/kernel/process_management/index.rst
/DragonOS/docs/kernel/process_management/load_binary.md
/DragonOS/kernel/Cargo.toml
/DragonOS/kernel/src/Makefile
/DragonOS/kernel/src/arch/mod.rs
/DragonOS/kernel/src/arch/x86_64/asm/irqflags.rs
/DragonOS/kernel/src/arch/x86_64/context.rs
/DragonOS/kernel/src/arch/x86_64/fpu.rs
/DragonOS/kernel/src/arch/x86_64/interrupt/mod.rs
/DragonOS/kernel/src/arch/x86_64/libs/mod.rs
/DragonOS/kernel/src/arch/x86_64/mm/mod.rs
/DragonOS/kernel/src/arch/x86_64/mod.rs
/DragonOS/kernel/src/arch/x86_64/msi.rs
/DragonOS/kernel/src/arch/x86_64/syscall.rs
/DragonOS/kernel/src/common/atomic.h
/DragonOS/kernel/src/driver/acpi/acpi.c
/DragonOS/kernel/src/driver/base/char/mod.rs
/DragonOS/kernel/src/driver/base/device/mod.rs
/DragonOS/kernel/src/driver/disk/ahci/ahci.c
/DragonOS/kernel/src/driver/interrupt/apic/apic.c
/DragonOS/kernel/src/driver/pci/msi.c
/DragonOS/kernel/src/driver/pci/pci.rs
/DragonOS/kernel/src/driver/pci/pci_irq.rs
/DragonOS/kernel/src/driver/uart/uart.rs
/DragonOS/kernel/src/driver/video/video.c
/DragonOS/kernel/src/driver/virtio/virtio_impl.rs
/DragonOS/kernel/src/exception/mod.rs
/DragonOS/kernel/src/exception/softirq.rs
/DragonOS/kernel/src/filesystem/procfs/mod.rs
/DragonOS/kernel/src/filesystem/sysfs/bus.rs
/DragonOS/kernel/src/filesystem/vfs/VFS.h
/DragonOS/kernel/src/filesystem/vfs/file.rs
/DragonOS/kernel/src/head.S
/DragonOS/kernel/src/include/bindings/wrapper.h
/DragonOS/kernel/src/ipc/signal.rs
/DragonOS/kernel/src/lib.rs
/DragonOS/kernel/src/libs/align.rs
/DragonOS/kernel/src/libs/elf.rs
/DragonOS/kernel/src/libs/libUI/screen_manager.c
/DragonOS/kernel/src/libs/libUI/screen_manager.h
/DragonOS/kernel/src/libs/libUI/textui.c
/DragonOS/kernel/src/libs/libUI/textui.h
/DragonOS/kernel/src/libs/mod.rs
/DragonOS/kernel/src/libs/printk.c
/DragonOS/kernel/src/libs/printk.rs
/DragonOS/kernel/src/libs/rwlock.rs
/DragonOS/kernel/src/libs/spinlock.rs
/DragonOS/kernel/src/main.c
/DragonOS/kernel/src/mm/allocator/buddy.rs
/DragonOS/kernel/src/mm/allocator/bump.rs
/DragonOS/kernel/src/mm/allocator/kernel_allocator.rs
/DragonOS/kernel/src/mm/allocator/mod.rs
/DragonOS/kernel/src/mm/allocator/page_frame.rs
/DragonOS/kernel/src/mm/allocator/slab.rs
/DragonOS/kernel/src/mm/c_adapter.rs
/DragonOS/kernel/src/mm/kernel_mapper.rs
/DragonOS/kernel/src/mm/mm-types.h
/DragonOS/kernel/src/mm/mm.h
/DragonOS/kernel/src/mm/mmio.h
/DragonOS/kernel/src/mm/mmio_buddy.rs
/DragonOS/kernel/src/mm/mod.rs
/DragonOS/kernel/src/mm/no_init.rs
/DragonOS/kernel/src/mm/page.rs
/DragonOS/kernel/src/mm/slab.h
/DragonOS/kernel/src/mm/syscall.rs
/DragonOS/kernel/src/mm/ucontext.rs
/DragonOS/kernel/src/process/abi.rs
/DragonOS/kernel/src/process/c_adapter.rs
/DragonOS/kernel/src/process/exec.rs
/DragonOS/kernel/src/process/fork.c
/DragonOS/kernel/src/process/fork.rs
/DragonOS/kernel/src/process/mod.rs
/DragonOS/kernel/src/process/proc-types.h
/DragonOS/kernel/src/process/process.c
/DragonOS/kernel/src/process/process.h
/DragonOS/kernel/src/process/process.rs
/DragonOS/kernel/src/sched/cfs.rs
/DragonOS/kernel/src/sched/core.c
/DragonOS/kernel/src/sched/core.rs
/DragonOS/kernel/src/sched/rt.rs
/DragonOS/kernel/src/sched/syscall.rs
/DragonOS/kernel/src/smp/c_adapter.rs
/DragonOS/kernel/src/smp/mod.rs
/DragonOS/kernel/src/smp/smp.c
mod.rs
syscall.c
syscall_num.h
user_access.rs
/DragonOS/kernel/src/time/clocksource.rs
/DragonOS/kernel/src/time/jiffies.rs
/DragonOS/kernel/src/time/syscall.rs
/DragonOS/kernel/src/time/timekeeping.rs
/DragonOS/kernel/src/time/timer.h
/DragonOS/kernel/src/time/timer.rs
/DragonOS/user/apps/about/about.c
/DragonOS/user/apps/shell/cmd.c
/DragonOS/user/apps/test_relibc/Makefile
/DragonOS/user/libs/libc/src/malloc.c
/DragonOS/user/libs/libc/src/unistd.c
bb5f098a22-Jul-2023 LoGin <longjin@DragonOS.org>

Revert "新的内存管理模块 (#301)" (#302)

This reverts commit d8ad0a5e7724469abd5cc3cf271993538878033e.


/DragonOS/.vscode/settings.json
/DragonOS/Makefile
/DragonOS/README.md
/DragonOS/README_EN.md
/DragonOS/docs/Multiboot2 Specification version 2.0.pdf
/DragonOS/docs/community/contact/index.rst
/DragonOS/docs/introduction/build_system.md
/DragonOS/docs/introduction/features.md
/DragonOS/docs/introduction/index.rst
/DragonOS/docs/kernel/core_api/allocate-memory.md
/DragonOS/docs/kernel/core_api/index.rst
/DragonOS/docs/kernel/core_api/mm-api.md
/DragonOS/docs/kernel/memory_management/index.rst
/DragonOS/docs/kernel/process_management/index.rst
/DragonOS/kernel/Cargo.toml
/DragonOS/kernel/src/Makefile
/DragonOS/kernel/src/arch/mod.rs
/DragonOS/kernel/src/arch/x86_64/asm/irqflags.rs
/DragonOS/kernel/src/arch/x86_64/context.rs
/DragonOS/kernel/src/arch/x86_64/fpu.rs
/DragonOS/kernel/src/arch/x86_64/interrupt/mod.rs
/DragonOS/kernel/src/arch/x86_64/mm/mod.rs
/DragonOS/kernel/src/arch/x86_64/mod.rs
/DragonOS/kernel/src/arch/x86_64/msi.rs
/DragonOS/kernel/src/arch/x86_64/syscall.rs
/DragonOS/kernel/src/common/atomic.h
/DragonOS/kernel/src/driver/acpi/acpi.c
/DragonOS/kernel/src/driver/base/char/mod.rs
/DragonOS/kernel/src/driver/base/device/mod.rs
/DragonOS/kernel/src/driver/disk/ahci/ahci.c
/DragonOS/kernel/src/driver/interrupt/apic/apic.c
/DragonOS/kernel/src/driver/pci/msi.c
/DragonOS/kernel/src/driver/pci/pci.rs
/DragonOS/kernel/src/driver/pci/pci_irq.rs
/DragonOS/kernel/src/driver/uart/uart.rs
/DragonOS/kernel/src/driver/video/video.c
/DragonOS/kernel/src/driver/virtio/virtio_impl.rs
/DragonOS/kernel/src/exception/mod.rs
/DragonOS/kernel/src/exception/softirq.rs
/DragonOS/kernel/src/filesystem/procfs/mod.rs
/DragonOS/kernel/src/filesystem/sysfs/bus.rs
/DragonOS/kernel/src/filesystem/vfs/VFS.h
/DragonOS/kernel/src/filesystem/vfs/file.rs
/DragonOS/kernel/src/head.S
/DragonOS/kernel/src/include/bindings/wrapper.h
/DragonOS/kernel/src/ipc/signal.rs
/DragonOS/kernel/src/lib.rs
/DragonOS/kernel/src/libs/align.rs
/DragonOS/kernel/src/libs/libUI/screen_manager.c
/DragonOS/kernel/src/libs/libUI/screen_manager.h
/DragonOS/kernel/src/libs/libUI/textui.c
/DragonOS/kernel/src/libs/libUI/textui.h
/DragonOS/kernel/src/libs/mod.rs
/DragonOS/kernel/src/libs/printk.c
/DragonOS/kernel/src/libs/printk.rs
/DragonOS/kernel/src/libs/rwlock.rs
/DragonOS/kernel/src/libs/spinlock.rs
/DragonOS/kernel/src/main.c
/DragonOS/kernel/src/mm/Makefile
/DragonOS/kernel/src/mm/allocator.rs
/DragonOS/kernel/src/mm/internal.h
/DragonOS/kernel/src/mm/mm-stat.c
/DragonOS/kernel/src/mm/mm-types.h
/DragonOS/kernel/src/mm/mm.c
/DragonOS/kernel/src/mm/mm.h
/DragonOS/kernel/src/mm/mmap.c
/DragonOS/kernel/src/mm/mmio.c
/DragonOS/kernel/src/mm/mmio.h
/DragonOS/kernel/src/mm/mmio_buddy.rs
/DragonOS/kernel/src/mm/mod.rs
/DragonOS/kernel/src/mm/slab.c
/DragonOS/kernel/src/mm/slab.h
/DragonOS/kernel/src/mm/syscall.rs
/DragonOS/kernel/src/mm/utils.c
/DragonOS/kernel/src/mm/vma.c
/DragonOS/kernel/src/process/fork.c
/DragonOS/kernel/src/process/fork.rs
/DragonOS/kernel/src/process/mod.rs
/DragonOS/kernel/src/process/proc-types.h
/DragonOS/kernel/src/process/process.c
/DragonOS/kernel/src/process/process.h
/DragonOS/kernel/src/process/process.rs
/DragonOS/kernel/src/sched/cfs.rs
/DragonOS/kernel/src/sched/core.c
/DragonOS/kernel/src/sched/core.rs
/DragonOS/kernel/src/sched/rt.rs
/DragonOS/kernel/src/sched/syscall.rs
/DragonOS/kernel/src/smp/mod.rs
/DragonOS/kernel/src/smp/smp.c
mod.rs
syscall.c
syscall_num.h
/DragonOS/kernel/src/time/clocksource.rs
/DragonOS/kernel/src/time/jiffies.rs
/DragonOS/kernel/src/time/syscall.rs
/DragonOS/kernel/src/time/timekeeping.rs
/DragonOS/kernel/src/time/timer.h
/DragonOS/kernel/src/time/timer.rs
/DragonOS/user/apps/about/about.c
/DragonOS/user/apps/shell/cmd.c
/DragonOS/user/apps/test_relibc/Makefile
/DragonOS/user/libs/libc/src/malloc.c
/DragonOS/user/libs/libc/src/unistd.c
d8ad0a5e22-Jul-2023 LoGin <longjin@DragonOS.org>

新的内存管理模块 (#301)

&emsp;&emsp;实现了具有优秀架构设计的新的内存管理模块,对内核空间和用户空间的内存映射、分配、释放、管理等操作进行了封装,使得内核开发者可以更加方便地进行内存管理。

&emsp;&emsp;内存管理模块主要由以下类型的组件组成:

- **硬件抽象层(MemoryManagementArch)** - 提供对具体处理器架构的抽象,使得内存管理

新的内存管理模块 (#301)

&emsp;&emsp;实现了具有优秀架构设计的新的内存管理模块,对内核空间和用户空间的内存映射、分配、释放、管理等操作进行了封装,使得内核开发者可以更加方便地进行内存管理。

&emsp;&emsp;内存管理模块主要由以下类型的组件组成:

- **硬件抽象层(MemoryManagementArch)** - 提供对具体处理器架构的抽象,使得内存管理模块可以在不同的处理器架构上运行
- **页面映射器(PageMapper)**- 提供对虚拟地址和物理地址的映射,以及页表的创建、填写、销毁、权限管理等操作。分为两种类型:内核页表映射器(KernelMapper)和用户页表映射器(位于具体的用户地址空间结构中)
- **页面刷新器(PageFlusher)** - 提供对页表的刷新操作(整表刷新、单页刷新、跨核心刷新)
- **页帧分配器(FrameAllocator)** - 提供对页帧的分配、释放、管理等操作。具体来说,包括BumpAllocator、BuddyAllocator
- **小对象分配器** - 提供对小内存对象的分配、释放、管理等操作。指的是内核里面的SlabAllocator (SlabAllocator的实现目前还没有完成)
- **MMIO空间管理器** - 提供对MMIO地址空间的分配、管理操作。(目前这个模块待进一步重构)
- **用户地址空间管理机制** - 提供对用户地址空间的管理。
- VMA机制 - 提供对用户地址空间的管理,包括VMA的创建、销毁、权限管理等操作
- 用户映射管理 - 与VMA机制共同作用,管理用户地址空间的映射
- **系统调用层** - 提供对用户空间的内存管理系统调用,包括mmap、munmap、mprotect、mremap等
- **C接口兼容层** - 提供对原有的C代码的接口,是的C代码能够正常运行。


除上面的新增内容以外,其它的更改内容:
- 新增二进制加载器,以及elf的解析器
- 解决由于local_irq_save、local_irq_restore函数的汇编不规范导致影响栈行为的bug。
- 解决local_irq_save未关中断的错误。
- 修复sys_gettimeofday对timezone参数的处理的bug

show more ...


/DragonOS/.vscode/c_cpp_properties.json
/DragonOS/.vscode/settings.json
/DragonOS/Makefile
/DragonOS/README.md
/DragonOS/README_EN.md
/DragonOS/docs/community/contact/index.rst
/DragonOS/docs/introduction/build_system.md
/DragonOS/docs/introduction/features.md
/DragonOS/docs/introduction/index.rst
/DragonOS/docs/kernel/core_api/index.rst
/DragonOS/docs/kernel/memory_management/allocate-memory.md
/DragonOS/docs/kernel/memory_management/index.rst
/DragonOS/docs/kernel/memory_management/intro.md
/DragonOS/docs/kernel/process_management/index.rst
/DragonOS/docs/kernel/process_management/load_binary.md
/DragonOS/kernel/Cargo.toml
/DragonOS/kernel/rust-toolchain.toml
/DragonOS/kernel/src/Makefile
/DragonOS/kernel/src/arch/mod.rs
/DragonOS/kernel/src/arch/x86_64/asm/irqflags.rs
/DragonOS/kernel/src/arch/x86_64/context.rs
/DragonOS/kernel/src/arch/x86_64/fpu.rs
/DragonOS/kernel/src/arch/x86_64/interrupt/mod.rs
/DragonOS/kernel/src/arch/x86_64/libs/mod.rs
/DragonOS/kernel/src/arch/x86_64/mm/mod.rs
/DragonOS/kernel/src/arch/x86_64/mod.rs
/DragonOS/kernel/src/arch/x86_64/msi.rs
/DragonOS/kernel/src/arch/x86_64/pci/pci.rs
/DragonOS/kernel/src/arch/x86_64/syscall.rs
/DragonOS/kernel/src/common/atomic.h
/DragonOS/kernel/src/driver/Makefile
/DragonOS/kernel/src/driver/acpi/acpi.c
/DragonOS/kernel/src/driver/base/char/mod.rs
/DragonOS/kernel/src/driver/base/device/bus.rs
/DragonOS/kernel/src/driver/base/device/driver.rs
/DragonOS/kernel/src/driver/base/device/mod.rs
/DragonOS/kernel/src/driver/base/map/mod.rs
/DragonOS/kernel/src/driver/base/mod.rs
/DragonOS/kernel/src/driver/base/platform/mod.rs
/DragonOS/kernel/src/driver/base/platform/platform_device.rs
/DragonOS/kernel/src/driver/base/platform/platform_driver.rs
/DragonOS/kernel/src/driver/disk/ahci/ahci.c
/DragonOS/kernel/src/driver/interrupt/apic/apic.c
/DragonOS/kernel/src/driver/pci/Makefile
/DragonOS/kernel/src/driver/pci/mod.rs
/DragonOS/kernel/src/driver/pci/msi.c
/DragonOS/kernel/src/driver/pci/pci.rs
/DragonOS/kernel/src/driver/pci/pci_irq.c
/DragonOS/kernel/src/driver/pci/pci_irq.h
/DragonOS/kernel/src/driver/pci/pci_irq.rs
/DragonOS/kernel/src/driver/uart/uart.rs
/DragonOS/kernel/src/driver/video/video.c
/DragonOS/kernel/src/driver/virtio/transport_pci.rs
/DragonOS/kernel/src/driver/virtio/virtio_impl.rs
/DragonOS/kernel/src/exception/mod.rs
/DragonOS/kernel/src/exception/softirq.rs
/DragonOS/kernel/src/filesystem/procfs/mod.rs
/DragonOS/kernel/src/filesystem/sysfs/bus.rs
/DragonOS/kernel/src/filesystem/sysfs/mod.rs
/DragonOS/kernel/src/filesystem/vfs/VFS.h
/DragonOS/kernel/src/filesystem/vfs/file.rs
/DragonOS/kernel/src/head.S
/DragonOS/kernel/src/include/bindings/wrapper.h
/DragonOS/kernel/src/ipc/signal.rs
/DragonOS/kernel/src/lib.rs
/DragonOS/kernel/src/libs/align.rs
/DragonOS/kernel/src/libs/elf.rs
/DragonOS/kernel/src/libs/libUI/screen_manager.c
/DragonOS/kernel/src/libs/libUI/screen_manager.h
/DragonOS/kernel/src/libs/libUI/textui.c
/DragonOS/kernel/src/libs/libUI/textui.h
/DragonOS/kernel/src/libs/mod.rs
/DragonOS/kernel/src/libs/printk.c
/DragonOS/kernel/src/libs/printk.rs
/DragonOS/kernel/src/libs/rwlock.rs
/DragonOS/kernel/src/libs/spinlock.rs
/DragonOS/kernel/src/libs/volatile.rs
/DragonOS/kernel/src/main.c
/DragonOS/kernel/src/mm/allocator/buddy.rs
/DragonOS/kernel/src/mm/allocator/bump.rs
/DragonOS/kernel/src/mm/allocator/kernel_allocator.rs
/DragonOS/kernel/src/mm/allocator/mod.rs
/DragonOS/kernel/src/mm/allocator/page_frame.rs
/DragonOS/kernel/src/mm/allocator/slab.rs
/DragonOS/kernel/src/mm/c_adapter.rs
/DragonOS/kernel/src/mm/kernel_mapper.rs
/DragonOS/kernel/src/mm/mm-types.h
/DragonOS/kernel/src/mm/mm.h
/DragonOS/kernel/src/mm/mmio.h
/DragonOS/kernel/src/mm/mmio_buddy.rs
/DragonOS/kernel/src/mm/mod.rs
/DragonOS/kernel/src/mm/no_init.rs
/DragonOS/kernel/src/mm/page.rs
/DragonOS/kernel/src/mm/slab.h
/DragonOS/kernel/src/mm/syscall.rs
/DragonOS/kernel/src/mm/ucontext.rs
/DragonOS/kernel/src/process/abi.rs
/DragonOS/kernel/src/process/c_adapter.rs
/DragonOS/kernel/src/process/exec.rs
/DragonOS/kernel/src/process/fork.c
/DragonOS/kernel/src/process/fork.rs
/DragonOS/kernel/src/process/mod.rs
/DragonOS/kernel/src/process/proc-types.h
/DragonOS/kernel/src/process/process.c
/DragonOS/kernel/src/process/process.h
/DragonOS/kernel/src/process/process.rs
/DragonOS/kernel/src/sched/cfs.rs
/DragonOS/kernel/src/sched/core.c
/DragonOS/kernel/src/sched/core.rs
/DragonOS/kernel/src/sched/rt.rs
/DragonOS/kernel/src/sched/syscall.rs
/DragonOS/kernel/src/smp/c_adapter.rs
/DragonOS/kernel/src/smp/mod.rs
/DragonOS/kernel/src/smp/smp.c
mod.rs
syscall.c
syscall_num.h
user_access.rs
/DragonOS/kernel/src/time/clocksource.rs
/DragonOS/kernel/src/time/jiffies.rs
/DragonOS/kernel/src/time/syscall.rs
/DragonOS/kernel/src/time/timekeeping.rs
/DragonOS/kernel/src/time/timer.h
/DragonOS/kernel/src/time/timer.rs
/DragonOS/user/apps/about/about.c
/DragonOS/user/apps/shell/cmd.c
/DragonOS/user/apps/test_relibc/Makefile
/DragonOS/user/libs/libc/src/malloc.c
/DragonOS/user/libs/libc/src/unistd.c
36fd013017-Jun-2023 houmkh <1119644616@qq.com>

实现gettimeofday()系统调用和clocksource+timekeeping子模块 (#278)

- 实现gettimeofday()系统调用
- 实现clocksource+timekeeping子模块部分功能
- 实现了timespec转换成日期时间

aa0367d630-May-2023 LoGin <longjin@DragonOS.org>

新的ipi功能&kick_cpu功能的重写 (#274)

ab5c8ca424-May-2023 login <longjin@DragonOS.org>

重构系统调用模块 (#267)

* 完成系统调用模块重构

* 更新github workflow


/DragonOS/.github/workflows/makefile.yml
/DragonOS/README.md
/DragonOS/README_EN.md
/DragonOS/docs/community/ChangeLog/V0.1.x/V0.1.7.md
/DragonOS/docs/community/ChangeLog/index.rst
/DragonOS/docs/kernel/filesystem/index.rst
/DragonOS/docs/kernel/filesystem/sysfs.md
/DragonOS/docs/kernel/sched/cfs.md
/DragonOS/kernel/src/arch/x86_64/cpu.rs
/DragonOS/kernel/src/arch/x86_64/mod.rs
/DragonOS/kernel/src/arch/x86_64/syscall.rs
/DragonOS/kernel/src/driver/base/device/bus.rs
/DragonOS/kernel/src/driver/base/device/driver.rs
/DragonOS/kernel/src/driver/base/device/mod.rs
/DragonOS/kernel/src/driver/base/platform/mod.rs
/DragonOS/kernel/src/driver/disk/ahci/ahcidisk.rs
/DragonOS/kernel/src/driver/tty/mod.rs
/DragonOS/kernel/src/driver/uart/uart.rs
/DragonOS/kernel/src/exception/entry.S
/DragonOS/kernel/src/filesystem/sysfs/bus.rs
/DragonOS/kernel/src/filesystem/sysfs/class.rs
/DragonOS/kernel/src/filesystem/sysfs/devices.rs
/DragonOS/kernel/src/filesystem/sysfs/mod.rs
/DragonOS/kernel/src/filesystem/vfs/core.rs
/DragonOS/kernel/src/filesystem/vfs/file.rs
/DragonOS/kernel/src/filesystem/vfs/mod.rs
/DragonOS/kernel/src/filesystem/vfs/syscall.rs
/DragonOS/kernel/src/include/bindings/wrapper.h
/DragonOS/kernel/src/ipc/pipe.rs
/DragonOS/kernel/src/ipc/signal.rs
/DragonOS/kernel/src/ipc/syscall.rs
/DragonOS/kernel/src/mm/mm-stat.c
/DragonOS/kernel/src/mm/mod.rs
/DragonOS/kernel/src/mm/syscall.rs
/DragonOS/kernel/src/net/syscall.rs
/DragonOS/kernel/src/process/mod.rs
/DragonOS/kernel/src/process/pid.rs
/DragonOS/kernel/src/process/process.c
/DragonOS/kernel/src/process/syscall.rs
/DragonOS/kernel/src/sched/cfs.rs
/DragonOS/kernel/src/sched/core.rs
/DragonOS/kernel/src/sched/mod.rs
/DragonOS/kernel/src/sched/rt.rs
/DragonOS/kernel/src/sched/syscall.rs
mod.rs
syscall.c
syscall.h
syscall_num.h
/DragonOS/kernel/src/time/mod.rs
/DragonOS/kernel/src/time/sleep.h
/DragonOS/kernel/src/time/sleep.rs
/DragonOS/kernel/src/time/syscall.rs
/DragonOS/rust-toolchain.toml
/DragonOS/tools/bootstrap.sh
/DragonOS/tools/change_rust_src.sh
/DragonOS/tools/write_disk_image.sh
/DragonOS/user/Makefile
/DragonOS/user/apps/about/Makefile
/DragonOS/user/apps/about/about.c
/DragonOS/user/apps/http_server/Makefile
/DragonOS/user/apps/http_server/link.lds
/DragonOS/user/apps/http_server/main.c
/DragonOS/user/apps/shell/Makefile
/DragonOS/user/apps/test_relibc/Makefile
/DragonOS/user/apps/test_signal/Makefile
/DragonOS/user/dadk/config/.gitignore
/DragonOS/user/dadk/config/http_server-0.1.0.dadk
/DragonOS/user/dadk/config/relibc-0.1.0.dadk
/DragonOS/user/dadk/config/test_relibc-0.1.0.dadk
f678331a23-Apr-2023 hanjiezhou <zhouhanjie@dragonos.org>

匿名管道重构&增加IrqArch trait以及IrqFlags及其守卫 (#253)

* 实现匿名管道

* 增加IrqArch trait以及IrqFlags及其守卫

---------

Co-authored-by: longjin <longjin@RinGoTek.cn>

cde5492f19-Apr-2023 login <longjin@DragonOS.org>

新增网络socket的系统调用接口 (#247)

1.修复spinlock忘记恢复rflags的问题
2.WaitQueue增加wakeup_all的功能
3.完善tcp,udp,raw socket
4.把PollStatus结构体改为使用bitflags
5.新增iovec结构体
6.完成网络的系统调用
7.在bootstrap里面添加dnsmasq bridge-utils

新增网络socket的系统调用接口 (#247)

1.修复spinlock忘记恢复rflags的问题
2.WaitQueue增加wakeup_all的功能
3.完善tcp,udp,raw socket
4.把PollStatus结构体改为使用bitflags
5.新增iovec结构体
6.完成网络的系统调用
7.在bootstrap里面添加dnsmasq bridge-utils iptables

---------

Co-authored-by: guanjinquan <1666320330@qq.com>

show more ...


/DragonOS/.gitignore
/DragonOS/docs/kernel/core_api/casting.md
/DragonOS/docs/kernel/core_api/index.rst
/DragonOS/docs/kernel/core_api/softirq.md
/DragonOS/docs/kernel/sched/index.rst
/DragonOS/docs/kernel/sched/kernel_timer.md
/DragonOS/kernel/src/arch/mod.rs
/DragonOS/kernel/src/arch/x86_64/pci/pci.rs
/DragonOS/kernel/src/driver/disk/ahci/ahci_inode.rs
/DragonOS/kernel/src/driver/keyboard/ps2_keyboard.rs
/DragonOS/kernel/src/driver/net/virtio_net.rs
/DragonOS/kernel/src/driver/pci/pci.rs
/DragonOS/kernel/src/driver/virtio/virtio.rs
/DragonOS/kernel/src/exception/softirq.h
/DragonOS/kernel/src/exception/softirq.rs
/DragonOS/kernel/src/exception/trap.c
/DragonOS/kernel/src/filesystem/devfs/mod.rs
/DragonOS/kernel/src/filesystem/devfs/null_dev.rs
/DragonOS/kernel/src/filesystem/devfs/zero_dev.rs
/DragonOS/kernel/src/filesystem/fat/fs.rs
/DragonOS/kernel/src/filesystem/procfs/mod.rs
/DragonOS/kernel/src/filesystem/ramfs/mod.rs
/DragonOS/kernel/src/filesystem/vfs/file.rs
/DragonOS/kernel/src/filesystem/vfs/mod.rs
/DragonOS/kernel/src/filesystem/vfs/syscall.rs
/DragonOS/kernel/src/lib.rs
/DragonOS/kernel/src/libs/casting.rs
/DragonOS/kernel/src/libs/mod.rs
/DragonOS/kernel/src/libs/spinlock.rs
/DragonOS/kernel/src/libs/wait_queue.rs
/DragonOS/kernel/src/mm/allocator.rs
/DragonOS/kernel/src/net/mod.rs
/DragonOS/kernel/src/net/net_core.rs
/DragonOS/kernel/src/net/socket.rs
/DragonOS/kernel/src/net/syscall.rs
/DragonOS/kernel/src/process/process.rs
syscall.c
syscall_num.h
/DragonOS/kernel/src/time/timer.rs
/DragonOS/tools/bootstrap.sh
/DragonOS/tools/qemu/ifdown-nat
/DragonOS/tools/qemu/ifup-nat
/DragonOS/tools/run-qemu.sh
/DragonOS/user/apps/shell/cmd.c
/DragonOS/user/apps/test_relibc/main.c
/DragonOS/user/libs/libsystem/syscall.h
79a452ce11-Apr-2023 houmkh <1119644616@qq.com>

修改errno,使其与relibc的保持一致 (#234)

修改errno,使其与relibc的保持一致

ac48398d11-Apr-2023 login <longjin@DragonOS.org>

调整brk系统调用,使得参数、返回值与Linux一致 (#238)

* 新增用于测试relibc的app

* 为适配relibc,修改do_execve中关于用户栈的内容的设置

* 调整brk系统调用,使得参数、返回值与Linux一致

13776c1110-Apr-2023 login <longjin@DragonOS.org>

增加对dhcpv4的支持(tcp、udp socket已写好,但由于缺少epoll机制,尚未完整测试) (#237)

* 为virtio网卡完成smoltcp的phy层配置

* raw socket

* 初步写完udp和tcp socket

* 能够正常通过dhcp获取ipv4地址(具有全局iface btree)

---------

Co-authored-by

增加对dhcpv4的支持(tcp、udp socket已写好,但由于缺少epoll机制,尚未完整测试) (#237)

* 为virtio网卡完成smoltcp的phy层配置

* raw socket

* 初步写完udp和tcp socket

* 能够正常通过dhcp获取ipv4地址(具有全局iface btree)

---------

Co-authored-by: guanjinquan <1666320330@qq.com>

show more ...

78bf93f009-Apr-2023 YJwu2023 <yujianwu2019@gmail.com>

pci重构+pcie支持 (#235)

* pci重构+pcie支持

* pci重构测试完成

* 修正makefile的问题

* 小修改

* 修改函数名字


/DragonOS/docs/community/ChangeLog/V0.1.x/V0.1.6.md
/DragonOS/docs/community/ChangeLog/index.rst
/DragonOS/docs/introduction/build_system.md
/DragonOS/docs/introduction/features.md
/DragonOS/kernel/Cargo.toml
/DragonOS/kernel/src/arch/mod.rs
/DragonOS/kernel/src/arch/x86_64/asm/current.rs
/DragonOS/kernel/src/arch/x86_64/context.rs
/DragonOS/kernel/src/arch/x86_64/include/asm/current.h
/DragonOS/kernel/src/arch/x86_64/mod.rs
/DragonOS/kernel/src/arch/x86_64/pci/mod.rs
/DragonOS/kernel/src/arch/x86_64/pci/pci.rs
/DragonOS/kernel/src/driver/Makefile
/DragonOS/kernel/src/driver/acpi/acpi.c
/DragonOS/kernel/src/driver/acpi/acpi.h
/DragonOS/kernel/src/driver/acpi/acpi.rs
/DragonOS/kernel/src/driver/acpi/mod.rs
/DragonOS/kernel/src/driver/base/device/bus.rs
/DragonOS/kernel/src/driver/base/device/driver.rs
/DragonOS/kernel/src/driver/base/device/mod.rs
/DragonOS/kernel/src/driver/base/mod.rs
/DragonOS/kernel/src/driver/base/platform/mod.rs
/DragonOS/kernel/src/driver/base/platform/platform_device.rs
/DragonOS/kernel/src/driver/base/platform/platform_driver.rs
/DragonOS/kernel/src/driver/disk/ahci/ahci_inode.rs
/DragonOS/kernel/src/driver/disk/ahci/mod.rs
/DragonOS/kernel/src/driver/keyboard/mod.rs
/DragonOS/kernel/src/driver/mod.rs
/DragonOS/kernel/src/driver/pci/pci.h
/DragonOS/kernel/src/driver/pci/pci.rs
/DragonOS/kernel/src/driver/timers/rtc/rtc.rs
/DragonOS/kernel/src/driver/video/mod.rs
/DragonOS/kernel/src/driver/video/video.c
/DragonOS/kernel/src/driver/virtio/transport_pci.rs
/DragonOS/kernel/src/driver/virtio/virtio.h
/DragonOS/kernel/src/driver/virtio/virtio.rs
/DragonOS/kernel/src/driver/virtio/virtio_impl.rs
/DragonOS/kernel/src/filesystem/devfs/null_dev.rs
/DragonOS/kernel/src/filesystem/devfs/zero_dev.rs
/DragonOS/kernel/src/filesystem/fat/bpb.rs
/DragonOS/kernel/src/filesystem/fat/entry.rs
/DragonOS/kernel/src/filesystem/fat/fs.rs
/DragonOS/kernel/src/filesystem/procfs/mod.rs
/DragonOS/kernel/src/filesystem/ramfs/mod.rs
/DragonOS/kernel/src/filesystem/vfs/mod.rs
/DragonOS/kernel/src/filesystem/vfs/mount.rs
/DragonOS/kernel/src/io/device.rs
/DragonOS/kernel/src/ipc/signal.rs
/DragonOS/kernel/src/ipc/signal_types.rs
/DragonOS/kernel/src/lib.rs
/DragonOS/kernel/src/libs/lazy_init.rs
/DragonOS/kernel/src/libs/libUI/screen_manager.c
/DragonOS/kernel/src/libs/lockref.rs
/DragonOS/kernel/src/libs/mod.rs
/DragonOS/kernel/src/libs/mutex.rs
/DragonOS/kernel/src/libs/rbtree.rs
/DragonOS/kernel/src/libs/rwlock.rs
/DragonOS/kernel/src/libs/volatile.rs
/DragonOS/kernel/src/main.c
/DragonOS/kernel/src/mm/mmio_buddy.rs
/DragonOS/kernel/src/mm/mod.rs
/DragonOS/kernel/src/process/fork.rs
/DragonOS/kernel/src/process/kthread.c
/DragonOS/kernel/src/process/process.c
/DragonOS/kernel/src/sched/cfs.rs
/DragonOS/kernel/src/sched/core.rs
mod.rs
/DragonOS/tools/bootstrap.sh
/DragonOS/user/apps/about/about.c
bacd691c02-Apr-2023 login <longjin@DragonOS.org>

软中断&定时器重构 (#223)

* 软中断&定时器重构

Co-authored-by: houmkh<houjiaying@DragonOS.org>

* 修改timer的clock()

* 删除debug信息

---------

Co-authored-by: houmkh <1119644616@qq.com>

2b771e3202-Apr-2023 Gou Ngai <sujintao@dragonos.org>

Add dup,dup2 (#224)

* dup,dup2

* fix: sys_dup2语义与posix不一致的问题

---------

Co-authored-by: longjin <longjin@RinGoTek.cn>

20e3152e31-Mar-2023 login <longjin@DragonOS.org>

将TTY与stdio进行连接,实现基本的stdio功能 (#217)

* 将stdio与tty接上

676b8ef629-Mar-2023 Mork <91721145+MorkCarpenter@users.noreply.github.com>

部分函数从返回值为Result<<>,i32>修改为Result<<>,SystemError> (#210)

* 将Result<<>,i32>替换为Result<<>,SystemError>
* bugfix: 显示双缓冲区初始化的时候,连续注册了两次Video Softirq的问题。

Co-authored-by: longjin <longjin@RinGoTek.cn>

64aea4b328-Mar-2023 Gou Ngai <sujintao@dragonos.org>

增加x87FPU支持 (#212)

* remove `ret_from_syscall`
*修复ps2键盘驱动程序inode在进程fork的时候导致死锁的问题.
*更新: VFS每次拷贝文件描述符的时候,都会去调用inode的open函数

---------

Co-authored-by: longjin <longjin@RinGoTek.cn>


/DragonOS/DragonOS
/DragonOS/docs/_templates/layout.html
/DragonOS/docs/conf.py
/DragonOS/docs/introduction/build_system.md
/DragonOS/docs/kernel/filesystem/index.rst
/DragonOS/docs/kernel/filesystem/overview.md
/DragonOS/docs/kernel/filesystem/vfs/api.md
/DragonOS/docs/kernel/filesystem/vfs/design.md
/DragonOS/docs/kernel/filesystem/vfs/index.rst
/DragonOS/docs/syscall_api/index.rst
/DragonOS/kernel/Cargo.toml
/DragonOS/kernel/src/arch/x86_64/context.rs
/DragonOS/kernel/src/arch/x86_64/fpu.rs
/DragonOS/kernel/src/arch/x86_64/mod.rs
/DragonOS/kernel/src/driver/keyboard/ps2_keyboard.rs
/DragonOS/kernel/src/driver/pci/pci.rs
/DragonOS/kernel/src/driver/virtio/mod.rs
/DragonOS/kernel/src/driver/virtio/transport_pci.rs
/DragonOS/kernel/src/driver/virtio/virtio.h
/DragonOS/kernel/src/driver/virtio/virtio.rs
/DragonOS/kernel/src/driver/virtio/virtio_impl.rs
/DragonOS/kernel/src/exception/entry.S
/DragonOS/kernel/src/exception/irq.c
/DragonOS/kernel/src/exception/trap.c
/DragonOS/kernel/src/filesystem/devfs/mod.rs
/DragonOS/kernel/src/filesystem/fat/bpb.rs
/DragonOS/kernel/src/filesystem/fat/fs.rs
/DragonOS/kernel/src/filesystem/vfs/file.rs
/DragonOS/kernel/src/ipc/signal.rs
/DragonOS/kernel/src/ipc/signal_types.rs
/DragonOS/kernel/src/libs/mod.rs
/DragonOS/kernel/src/libs/volatile.rs
/DragonOS/kernel/src/mm/mmio_buddy.rs
/DragonOS/kernel/src/process/fork.c
/DragonOS/kernel/src/process/proc-types.h
/DragonOS/kernel/src/process/process.c
/DragonOS/kernel/src/process/process.rs
/DragonOS/kernel/src/sched/core.rs
/DragonOS/kernel/src/sched/rt.rs
syscall.c
syscall.h
/DragonOS/tools/run-qemu.sh
/DragonOS/user/apps/about/about.c
/DragonOS/user/apps/shell/cmd.c
/DragonOS/user/apps/test_signal/main.c

12345