90 Commits

Author SHA1 Message Date
login
d328bfce6b
bugfix: 修正潜在的错误路径 (#64)
* bugfix: 修正潜在的错误路径

* 修正格式
2022-10-22 20:17:40 +08:00
longjin
fbe1e23e97 将makefile中的gcc字样用$(CC)环境变量代替 2022-10-16 11:08:32 +08:00
fslongjin
02a6b3a303 new: kthread机制 2022-09-30 15:30:50 +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
houmkh
6db92c86b8
在acpi中使用mmio来映射rsdt表(#40)
* 在acpi中使用mmio来映射rsdt表

* bugfix: 修复page fault的问题

Co-authored-by: fslongjin <longjin@RinGoTek.cn>
2022-09-09 00:21:46 +08:00
fslongjin
41c7a84105 删除debug信息 2022-09-03 11:58:01 +08:00
fslongjin
ff94280f77 new: msix中断 2022-08-23 21:10:48 +08:00
fslongjin
1e8e6523df bugfix: mmio区域的vma的page已存在时,会重新创建新的page的问题 2022-08-20 18:08:34 +08:00
fslongjin
8bef6058e2 new: 初步完成了mmio地址空间自动分配
bugfix: mmio虚拟地址分配的bug

调整注释
2022-08-20 15:58:10 +08:00
fslongjin
05477932de Merge branch 'master' into patch-io-mapping 2022-08-19 21:54:49 +08:00
fslongjin
7378e8bab8 bugfix: 修复对vma是否已经存在的判断的bug 2022-08-19 21:53:47 +08:00
fslongjin
77633e2f19 new: 初步实现了mmio的伙伴系统 2022-08-18 22:06:29 +08:00
fslongjin
f513286f53 new:kzalloc 2022-08-15 17:57:05 +08:00
fslongjin
cec44c1fd7 增加vma的page_offset计算 2022-08-15 16:58:56 +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
fslongjin
11081c90a0 数据结构位置的调整 2022-08-14 18:58:02 +08:00
fslongjin
642fa1def8 new: 引入vmarea 2022-08-12 18:27:34 +08:00
fslongjin
aa1046afae Merge branch 'master' into patch-add-vm-area 2022-08-11 23:03:03 +08:00
fslongjin
47f45c2826 bugfix: 当待释放的内存区域中同时存在4K页和2M页时,会释放错误数量的4K页的问题 2022-08-11 22:57:46 +08:00
fslongjin
51bc465a25 new: 映射vma 2022-08-11 22:15:53 +08:00
fslongjin
8d39334e39 文件结构调整:将内存映射有关代码移动到mmap.c 2022-08-11 20:10:00 +08:00
fslongjin
b4b2c67514 vma的一些方法 2022-08-11 19:07:58 +08:00
fslongjin
60d6ea0fd8 new: 定义了vma结构体 2022-08-11 18:11:10 +08:00
fslongjin
fb51b0dd6f new: mstat()函数,查询内存信息 2022-08-06 23:31:25 +08:00
fslongjin
de3324ed7d 实现屏幕管理器大致的框架 2022-08-03 14:11:14 +08:00
fslongjin
23fa428274 fix: init_mm中未加mfence导致O3出错的问题 2022-08-01 23:27:41 +08:00
fslongjin
8bd6e981f0 fix:在smp模块中增加mfence 2022-08-01 23:18:54 +08:00
fslongjin
e806bbc0c8 o3能运行 2022-08-01 20:55:47 +08:00
fslongjin
bc1d2562c0 bugfix: slab增加自旋锁 2022-08-01 15:04:03 +08:00
fslongjin
7c9366b297 new: 增加ktest_start函数以开启内核自测试 2022-07-29 17:40:55 +08:00
fslongjin
1b4f812fe4 doc: 内存管理api 2022-07-27 00:09:19 +08:00
fslongjin
494bcc1811 bitree的单元测试以及bug修复 2022-07-26 15:44:01 +08:00
fslongjin
a3b5102a36 wrench: 更新Makefile 2022-07-25 11:05:30 +08:00
fslongjin
aa3f433cd5 使mm支持4K虚拟地址映射 2022-07-18 16:07:34 +08:00
fslongjin
6ecc19cc48 增加了xhci cap regs的数据结构 2022-07-17 23:07:09 +08:00
fslongjin
d0ddb73788 🔧 include上级文件夹时,统一采用<>来指定文件 2022-07-17 15:41:19 +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
46ee327742 🐛 修复malloc扩容时int32溢出的bug,以及扩容堆内存后,由于未执行合并从而导致产生大量碎片的bug 2022-05-21 00:47:30 +08:00
fslongjin
464837eb1a 🆕 double buffer 2022-05-20 19:37:26 +08:00
fslongjin
59e847294a 修复makefile的bug 2022-05-18 21:13:23 +08:00
fslongjin
8d8fd391fb 🐛 修复了需要映射的物理地址跨越页表时,产生内存越界的问题 2022-05-18 21:03:47 +08:00
fslongjin
5df5d79900 🆕 加载elf文件 2022-05-18 18:27:00 +08:00
fslongjin
1cc3db5e88 🆕 回收堆内存给操作系统 2022-05-11 20:42:53 +08:00
fslongjin
fd0147e04c 🆕 malloc 、printf 2022-05-07 13:46:23 +08:00
fslongjin
78a219b715 🆕 内核堆内存调整函数 2022-05-06 15:29:42 +08:00
fslongjin
b7437b24d7 🐛 页表拷贝的bug 2022-05-06 11:44:53 +08:00