Skip to content

loongarch64/proj-la-xv6-teaching-edition

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

proj-la-xv6-teaching-edition

xv6 teaching edition development for loongarch64

项目名称

龙芯xv6教学版开发

支持单位

龙芯中科技术股份有限公司、中国科学院计算技术研究所

项目描述

对龙芯xv6操作系统进行扩展,实现以下"教学版"功能,使之能配合操作系统课程理论教学中的四大管理模块,在讲授到相应内容时可以用xv6作为支撑实例。基本要求 如下(可以自行扩展)。

进程控制

读出指定进程PCB,按字段显示

  • 列出进程树
  • 列出指定进程的main参数
  • 统计指定进程的切换次数、睡眠时间

进程通信

  • 列出系统中共享内存信息,在各进程中的映射地址、物理内存
  • 读出并显示共享内存指定地址上的数据
  • 列出信号量列表,及相应资源的数量
  • 列出指定进程的消息队列信息,按字段显示

内存管理

  • 打印物理内存使用情况
  • 打印指定进程号的虚存空间使用情况(代码/数据/堆/栈)
  • 打印指定进程的页表信息(虚实映射、换出情况、具体页表项字段解析)
  • 打印内核数据使用情况(进程控制块PCB、文件控制块file对象等数量和相应信息)

文件管理

  • 读出超级块,按字段显示
  • 读出指定编号的索引节点
  • 读出指定盘块号,读出盘块内容

设备管理(不在xv6中讨论)

系统调用

  • 列出系统调用号、功能、对应入口地址
  • 对指定系统调用,跟踪显示该系统调用每一次的调用者、参数、返回值等信息

所属赛道

2023全国大学生操作系统比赛的“OS功能挑战”赛道

参赛要求

  • 以小组为单位参赛,最多三人一个小组,且小组成员是来自同一所高校的本科生或研究生;
  • 如学生参加了多个项目,参赛学生选择一个自己参加的项目参与评奖;
  • 请遵循“2023全国大学生操作系统比赛”的章程和技术方案要求。

项目导师

  • 张福新
    • github github.com/foxsen
    • Email fxzhang at ict.ac.cn

难度

中-低

License

GPL V3.0.

预期目标

  • 提供实现指定要求的xv6操作系统项目代码,以及相应的编译,运行,测试文档。

参考资源

备注

进入决赛的团队,龙芯可提供所需平台,在龙芯3A5000等真实机器上调试运行目标系统并完成性能优化

About

xv6 teaching edition for LoongArch

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published