71 Commits

Author SHA1 Message Date
login
004e86ff19
新版文件系统重构完成 (#198)
1.重构:VFS
2. 重构:ProcFS
3. 重构:DevFS
4. 重构:FAT32
5. 重构:AHCI驱动
6. 新增:RamFS
7. 新增:MountFS
8. 新增:FAT12
9. 新增:FAT16
10. 重构:设备抽象

Co-authored-by: guanjinquan <1666320330@qq.com>
Co-authored-by: DaJiYuQia <88259094+DaJiYuQia@users.noreply.github.com>
2023-03-12 22:36:11 +08:00
YJwu2023
26d84a3139
新增VirtIO网卡驱动 (#194)
* 修复内存bug与grub安装脚本的错误

* 修改小bug

* PCI增加功能与virtio-net驱动

* little fix

* virtio-net小修改
2023-03-11 21:09:50 +08:00
login
2bf5ee0e3c
修改libc的编译相关内容(#171)
1.将libc的include文件夹分为export和internal
2.将所有app都直接链接libc.a,而不是都执行一遍"搜索.o"的过程
2023-02-11 13:04:24 +08:00
login
2726f101b4
删除无用的cfs.h (#136) 2023-01-03 21:01:56 +08:00
guanjinquan
74bde36e01
Patch porting gcc v2 (#124)
* 更改编译器的Include路径,使得include时不需要加`<libc/src/include/>`前缀

* 修改include路径

Co-authored-by: longjin <longjin@RinGoTek.cn>
2022-12-31 17:35:39 +08:00
login
7a818da88a
Patch about auto gen version string (#114)
* new: about app中,显示当前构建的git commit sha1以及构建时间

* bugfix: 修复shell的exec命令对绝对路径的拼接错误问题
2022-12-17 17:49:12 +08:00
login
6efd474033
允许用户自定义信号处理函数 (#112)
* new: 用户注册信号处理函数,能够进入自定义的handler

* 修复忘了传信号的数字给用户的处理函数的bug

* new:sigreturn

* 删除注释
2022-12-17 16:27:50 +08:00
login
0e0c187484
在内核代码中加入自定义的stdint.h文件 (#109) 2022-12-16 16:20:09 +08:00
wwc-15172310230
237e95c6dd
调整user下libs的libc目录结构 (#103)
* 调整user下libs的libc目录结构

* 修正.gitignore文件的问题

* 修复无法编译的问题

Co-authored-by: longjin <longjin@RinGoTek.cn>
2022-12-11 22:22:10 +08:00
DaJiYuQia
27a97abd24
Patch procf (#90)
* 1234

* 123

* 合并master

* procfs

* 1

* procfs展示进程基本信息

* modified code

* 恢复权限

* 恢复权限

 #恢复权限

* modify permission

* 删除run.sh

* 解决第一次编译时磁盘镜像权限错误的问题

* 恢复.vscode/c_cpp_properties.json

* 删除process.c中错误的do_fork

* remake procfs

* 修改一些变量名

* 修改类型

* modified

* data_puts缓冲区溢出后return

Co-authored-by: longjin <longjin@RinGoTek.cn>
2022-11-26 17:34:00 +08:00
login
cffd7144fb
signal相关数据结构&代码结构优化 (#84)
* 解决由于spinlock.h中包含preempt_enable()带来的循环include问题

* new: 初步实现signal的数据结构
2022-11-16 15:18:03 +08:00
login
2813126e31
新增rust ffi (#77)
* 引入cargo

* 取消对Cargo.lock的跟踪

* 解决vscode报错问题

* new: rust的代码能够调用c语言的printk_color

* 1、将原本run.sh的工作拆解,变为几个不同的make命令
2、在docker镜像中编译rust

* 更改workflow

* update workflow

* new: 解决workflow无法通过编译的问题
2022-11-11 15:35:37 +08:00
houmkh
d9ee9a0f5b
Release worker private (#74)
* 释放worker private,to_thread问题待解决

* 增加process_free_task_

* 测试free_kthread_struct,process_free_task

* free_kthread_struct测试ok

* 修正函数重复的问题

Co-authored-by: longjin <longjin@RinGoTek.cn>
2022-11-04 14:19:24 +08:00
guanjinquan
09f8d6f577
添加completion模块+wait_queue_head模块+schedule_timeout (#70)
* 添加completion模块+wait_queue_head模块+schedule_timeout

* 修复一些bug

* 实现设置pcb名字和vsnprintf (#72)

* 实现pcb设置名字

* 实现设置pcb名字,实现vsnprintf

* 修改set_pcb_name和va_end

* bugfix: 修正一些小问题

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

* new: FAT32删除文件的功能 (#73)

* new: 将sys_rmdir更改为sys_unlink,.且完成删除文件操作的vfs部分

* new: fat32删除文件

*bugfix: 解决创建文件时的bug

* new: 将可执行文件移动到bin目录下

* 完善completion和wait_queue_head文档,并确保测试ok。

Co-authored-by: longjin <longjin@RinGoTek.cn>
Co-authored-by: houmkh <100781004+houmkh@users.noreply.github.com>
2022-11-03 21:54:59 +08:00
login
31b7b49d8c
new: FAT32删除文件的功能 (#73)
* new: 将sys_rmdir更改为sys_unlink,.且完成删除文件操作的vfs部分

* new: fat32删除文件

*bugfix: 解决创建文件时的bug
2022-11-02 15:42:44 +08:00
kong
34205659b5
Patch isolate sched_cfs (#62)
* 独立cfs到新的文件

* update

* bugfix: 解决调度器卡住的问题

Co-authored-by: longjin <longjin@RinGoTek.cn>
2022-10-17 18:04:41 +08:00
login
39f11c5b4b
新增usb hid report解析器 (#58)
* new: usb hid parser
2022-10-14 18:45:10 +08:00
login
efa38a7d5d
使用内核线程来刷新屏幕 (#57)
* 修改了test-idr的错误

* new: 修复切换双缓冲的时候的卡顿问题

Signed-off-by: guanjinquan <1666320330@qq.com>
Co-authored-by: guanjinquan <1666320330@qq.com>
Co-authored-by: fslongjin <longjin@RinGoTek.cn>
2022-10-12 18:45:58 +08:00
guanjinquan
1067ae7da8
Patch add idr (#52)
* 增加了idr模块

* 增加了IDR模块,并尝试覆盖上一个错误版本.

* 增加了IDR模块

* 完善了注释内容

* 修改了test-idr.c文件

* 进一步完善函数注释

Signed-off-by: guanjinquan <1666320330@qq.com>
Co-authored-by: fslongjin <longjin@RinGoTek.cn>
2022-10-06 16:13:29 +08:00
fslongjin
7e0835c92f new: devfs设备卸载 2022-10-06 14:48:44 +08:00
fslongjin
35345cae6c doc: 内核线程文档 2022-09-30 18:00:10 +08:00
liric
fcdd6f5fa9 完成了tty设备在devfs中的注册 2022-09-15 23:09:15 +08:00
fslongjin
72f9c430c5 new: rootfs 2022-09-14 23:51:58 +08:00
fslongjin
26eebaf03a 删除文件夹时回收dentry缓存 2022-09-13 16:17:35 +08:00
fslongjin
9f2b080cda new: devfs删除文件夹 2022-09-12 23:56:31 +08:00
fslongjin
339053a20e 将具体磁盘类型与fat32文件系统进行分离 2022-09-06 14:10:17 +08:00
fslongjin
4713a1a152 new: 移植了LZ4库 2022-09-03 16:13:29 +08:00
fslongjin
0223232f3f new: 初步完成了mmio地址空间自动分配(未测试)
bugfix: mmio虚拟地址分配的bug
2022-08-20 14:54:19 +08:00
fslongjin
77633e2f19 new: 初步实现了mmio的伙伴系统 2022-08-18 22:06:29 +08:00
fslongjin
06af77bd79 fix: 解决了page的锁未被初始化的bug 2022-08-15 12:09:04 +08:00
fslongjin
1dd9195d69 new: vma反向映射 2022-08-15 01:42:34 +08:00
fslongjin
f3cd2b7777 merge master and fix conflicts 2022-08-14 21:43:39 +08:00
Eugene
618b612754 将 kernel\common\math\pow.c 的求幂运算优化为快速幂 2022-08-14 21:27:21 +08:00
fslongjin
17d5fea2cf new: 初步完成了textui的基本显示功能 2022-08-04 21:40:26 +08:00
fslongjin
de3324ed7d 实现屏幕管理器大致的框架 2022-08-03 14:11:14 +08:00
fslongjin
fadeee36a2 Merge branch 'master' into patch-screen-manager 2022-08-02 10:14:57 +08:00
fslongjin
e806bbc0c8 o3能运行 2022-08-01 20:55:47 +08:00
fslongjin
fd1b4220be 创建了screen manager文件 2022-08-01 19:43:57 +08:00
fslongjin
4bc64de8f9 🆕 测定tsc频率 2022-07-27 21:05:33 +08:00
fslongjin
813c3f9bf8 bitree: delete node 2022-07-25 17:01:37 +08:00
fslongjin
2b0b727893 🔧 将enable msi的部分更新为使用msi_desc来完成 2022-07-25 13:50:03 +08:00
fslongjin
16d6b94c46 将usb的初始化交由init进程进行处理 2022-07-18 21:19:34 +08:00
fslongjin
a1c843cd3a new: 简单的warn assert 2022-07-17 17:23:56 +08:00
fslongjin
d0ddb73788 🔧 include上级文件夹时,统一采用<>来指定文件 2022-07-17 15:41:19 +08:00
fslongjin
7670031b11 bugfix: 修复浮点数打印错误的bug 2022-07-12 13:19:51 +08:00
fslongjin
eb67b612c4 🔧 更改目录结构,将定时器独立出来
将定时器独立出来
2022-07-11 11:51:48 +08:00
fslongjin
b79ba099df bugfix: 修复了fat32_mkdir的bug(在非根目录下创建文件夹会出错)(在/dev中创建子文件夹,opendir时属性设置错误的bug) 2022-07-06 17:10:54 +08:00
fslongjin
9bf52cf2ab 🔧 修正了创建硬盘镜像的脚本的bug 2022-07-03 22:37:54 +08:00
fslongjin
4e04ab9eee 🆕 在shell中启动另一个程序 2022-06-07 23:18:26 +08:00
fslongjin
8246c1c9e2 🆕 pwd命令 2022-05-24 16:37:28 +08:00