Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(mm): 实现缺页中断处理 #715

Merged
merged 16 commits into from
Apr 22, 2024

Conversation

MemoryShore
Copy link
Collaborator

  • 实现内存映射的延迟分配:vma分配的空间会在访问时才进行物理内存分配
  • 实现父子进程的写时拷贝:创建子进程时父子进程会共享相同的物理内存,进程拷贝时会将共享页设置为只读,写入时触发写时拷贝

@MemoryShore MemoryShore reopened this Apr 11, 2024
@dragonosbot dragonosbot added O-riscv64 Target: riscv64 O-x86_64 Target: x86_64 labels Apr 11, 2024
@fslongjin fslongjin added the A-mm Area: 内存管理子系统 label Apr 12, 2024
@fslongjin fslongjin added this to the DragonOS 0.1.10 milestone Apr 12, 2024
@fslongjin
Copy link
Member

@Jomocool

kernel/src/mm/fault.rs Outdated Show resolved Hide resolved
kernel/src/arch/x86_64/process/syscall.rs Show resolved Hide resolved
kernel/src/mm/page.rs Outdated Show resolved Hide resolved
kernel/src/mm/ucontext.rs Show resolved Hide resolved
kernel/src/arch/x86_64/mm/fault.rs Show resolved Hide resolved
kernel/src/mm/ucontext.rs Show resolved Hide resolved
kernel/src/mm/ucontext.rs Outdated Show resolved Hide resolved
kernel/src/mm/ucontext.rs Show resolved Hide resolved
kernel/src/mm/ucontext.rs Outdated Show resolved Hide resolved
kernel/src/mm/syscall.rs Outdated Show resolved Hide resolved
@fslongjin
Copy link
Member

@dragonosbot author

@dragonosbot dragonosbot added the S-等待作者修改 Status: 这正在等待作者的一些操作(例如代码更改或更多信息)。 label Apr 14, 2024
@Chiichen Chiichen changed the title 实现缺页中断处理 feat(mm): 实现缺页中断处理 Apr 14, 2024
kernel/src/arch/x86_64/mm/mod.rs Outdated Show resolved Hide resolved
@MemoryShore
Copy link
Collaborator Author

@dragonosbot review

@dragonosbot dragonosbot removed the S-等待作者修改 Status: 这正在等待作者的一些操作(例如代码更改或更多信息)。 label Apr 20, 2024
@dragonosbot dragonosbot added the S-等待审查 Status: 等待assignee以及相关方的审查。 label Apr 20, 2024
@MemoryShore MemoryShore requested a review from fslongjin April 20, 2024 14:48
@fslongjin
Copy link
Member

@GnoCiYeH 看一下这个,我个人感觉没问题。

@fslongjin fslongjin requested a review from Jomocool April 21, 2024 05:31
@fslongjin fslongjin merged commit a17651b into DragonOS-Community:master Apr 22, 2024
7 checks passed
BrahmaMantra pushed a commit to BrahmaMantra/DragonOS that referenced this pull request Dec 9, 2024
* 实现缺页中断处理

* 完善页表拷贝逻辑

* 优化代码结构

* 完善缺页异常信息

* 修改大页映射逻辑

* 修正大页映射错误

* 添加缺页中断支持标志

* 实现用户栈自动拓展功能
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-mm Area: 内存管理子系统 O-riscv64 Target: riscv64 O-x86_64 Target: x86_64 S-等待审查 Status: 等待assignee以及相关方的审查。
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants