82 Commits

Author SHA1 Message Date
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
login
fb417a5e81
xhci: 获取设备描述符并配置endpoint (#50)
* 调整:使用宏定义来声明usb请求包

* new: 获取usb设备的config描述符

* new: 获取接口及端点描述符

* 临时修正系统根分区的挂载,使得能在真机上启动shell

* xhci: set_config

* bugfix: 解决之前错误的将control_endpoint信息绑定在xhci_hc下的bug

* xhci configure endpoint(存在bug

* 1

* 解决了configure endpoint出错的问题

* new: xhci驱动程序能够配置端点

* 删除trace usb的代码

xhci: 获取设备描述符并配置endpoint
存在问题:尚未能够正确初始化usb键盘,也没有将usb键盘相关的代码独立出来。
2022-09-30 20:39:02 +08:00
fslongjin
02a6b3a303 new: kthread机制 2022-09-30 15:30:50 +08:00
fslongjin
1872d9bd4a 将common文件夹下的c文件移动到lib文件夹下 2022-09-28 21:45:38 +08:00
houmkh
be9ac3d58b
Combine vma (#42)
* 合并vma

* 调整vma映射,修复bug

* 删除注释

Co-authored-by: fslongjin <longjin@RinGoTek.cn>
Co-authored-by: houmkh <100781004+houmkh@users.noreply.github.com>
2022-09-22 00:31:17 +08:00
fslongjin
0e624b1fcf 调整:devfs注册设备后,返回指向inode私有信息的指针 2022-09-17 14:11:17 +08:00
fslongjin
b708443d68 bugfix: 解决了为应用程序映射elf的过程中,由于地址未对齐而导致的可能的内存越界问题 2022-09-16 21:40:18 +08:00
fslongjin
72f9c430c5 new: rootfs 2022-09-14 23:51:58 +08:00
fslongjin
9f2b080cda new: devfs删除文件夹 2022-09-12 23:56:31 +08:00
login
7d44599447
Devfs初步实现 (#41)
* new: 在devfs中使用键盘文件(仍存在bug)

* new:支持dev目录下的readdir
2022-09-07 23:27:27 +08:00
fslongjin
339053a20e 将具体磁盘类型与fat32文件系统进行分离 2022-09-06 14:10:17 +08:00
fslongjin
94c960ae89 bugfix: 解决了xhci驱动程序无法在真机上获取设备描述符的bug 2022-09-04 20:57:00 +08:00
fslongjin
4713a1a152 new: 移植了LZ4库 2022-09-03 16:13:29 +08:00
houmkh
1a2d405384
将当前的sched_cfs函数做一个包裹,套一层sched(). (#32)
* 将当前的sched_cfs函数做一个包裹,套一层sched().

* 用sched()包裹sched_cfs(),用sched_enqueue()包裹sched_cfs_enqueue()

* 用sched()包裹sched_cfs(),用sched_enqueue()包裹sched_cfs_enqueue(),并替换

* bugfix: 修正拼写错误导致的编译错误

* 修正拼写错误

Co-authored-by: fslongjin <longjin@RinGoTek.cn>
2022-08-31 07:59:31 +08:00
zzy666-hw
554b73ec99
add ipc pipe (#28) 2022-08-20 21:47:41 +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
1dd9195d69 new: vma反向映射 2022-08-15 01:42:34 +08:00
fslongjin
642fa1def8 new: 引入vmarea 2022-08-12 18:27:34 +08:00
fslongjin
60d6ea0fd8 new: 定义了vma结构体 2022-08-11 18:11:10 +08:00
fslongjin
d9ee6ea859 new: string.h 2022-08-03 15:13:01 +08:00
fslongjin
f06ed2d886 使process模块能以O3优化下运行 2022-08-01 21:42:23 +08:00
fslongjin
58681fd34a O1能跑的代码 2022-08-01 19:43:21 +08:00
fslongjin
2fd21e0395 new: 内核态fork 2022-08-01 14:20:16 +08:00
fslongjin
946bbef392 new: mutex 2022-07-31 17:09:12 +08:00
fslongjin
a02acbdbe6 将进程同步原语移动到common文件夹下 2022-07-31 14:17:26 +08:00
fslongjin
5963c45116 bugfix: 在内核线程中,rflags未按照预期值进行设置的问题 2022-07-30 13:12:29 +08:00
fslongjin
7c9366b297 new: 增加ktest_start函数以开启内核自测试 2022-07-29 17:40:55 +08:00
fslongjin
2a983a8534 new: kfifo 2022-07-28 19:48:20 +08:00
fslongjin
90203803d3 🆕 使用rdtsc进行精确定时 2022-07-27 21:19:59 +08:00
fslongjin
494bcc1811 bitree的单元测试以及bug修复 2022-07-26 15:44:01 +08:00
fslongjin
16d6b94c46 将usb的初始化交由init进程进行处理 2022-07-18 21:19:34 +08:00
fslongjin
aa3f433cd5 使mm支持4K虚拟地址映射 2022-07-18 16:07:34 +08:00
fslongjin
d0ddb73788 🔧 include上级文件夹时,统一采用<>来指定文件 2022-07-17 15:41:19 +08:00
fslongjin
676260c537 🆕 usleep()、nanosleep() 2022-07-12 12:01:51 +08:00
fslongjin
9ce123418f 删了几处无用信息 2022-06-10 00:22:14 +08:00
fslongjin
cdbc4a316c bugfix: 修复了无法在除pid=0的进程以外的进程刷新帧缓冲区的bug 2022-06-09 23:54:42 +08:00
fslongjin
2a47569473 bugfix: exec执行的文件不存在时,自动退出进程。 2022-06-09 21:56:32 +08:00
fslongjin
4e04ab9eee 🆕 在shell中启动另一个程序 2022-06-07 23:18:26 +08:00
fslongjin
129d24296b bug fix: page_num>=25时,填入页表的实际上是同一个物理页的bug 2022-06-02 19:22:03 +08:00
fslongjin
d64ddfa0b6 debuging... 2022-06-02 14:20:53 +08:00
fslongjin
e2a59dbd43 🆕 exec (存在bug 2022-05-31 21:55:06 +08:00
fslongjin
b02f5ea47c bug fix: 修复了加载进程时未对内存空间清零的问题 2022-05-25 14:37:06 +08:00
fslongjin
afeca18206 🎨 将shell独立成单独的app 2022-05-24 14:36:24 +08:00
fslongjin
1eb9a299b6 bug fix: Multiplication result converted to larger type 2022-05-21 21:57:00 +08:00
fslongjin
832c0c7e5c 🔧 更新了键盘驱动程序,使其适配vfs 2022-05-20 22:53:47 +08:00
fslongjin
8d8fd391fb 🐛 修复了需要映射的物理地址跨越页表时,产生内存越界的问题 2022-05-18 21:03:47 +08:00
fslongjin
5df5d79900 🆕 加载elf文件 2022-05-18 18:27:00 +08:00
fslongjin
78a219b715 🆕 内核堆内存调整函数 2022-05-06 15:29:42 +08:00
fslongjin
b7437b24d7 🐛 页表拷贝的bug 2022-05-06 11:44:53 +08:00