自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 高级软件工程——课程总结

l

2023-07-11 13:12:11 110 1

原创 作业4:从需求分析到软件设计

​​​​​​​l

2023-05-30 23:48:47 136 1

原创 Linux操作系统分析课程总结报告

将当前进程X的内核堆栈切换到进程调度算法选出来的next进程(本例假定为进程Y)的内核堆栈,并完成了进程上下文所需的EIP等寄存器状态切换。详细过程见前述内容。标号1,即前述3.18.6内核的swtich_to代码第50行“”1:\t“ ”(地址为switch_to中的“$1f”),之后开始运行进程Y(这里进程Y曾经通过以上步骤被切换出去,因此可以从标号1继续执行)。注意这里是进程Y的中断处理过程中,而(3)中保存现场是在进程X的中断处理过程中,因为内核堆栈从进程X切换到进程Y了。正在运行的用户态进程X。

2023-05-20 21:58:45 179 1

原创 lab5:深入理解进程切换

一、进程调度时机就是内核调用schedule函数的时机用户进程上下文中主动调用特定的系统调用进入中断上下文,系统调用返回用户态之前进行进程调度。内核线程或可中断的中断处理程序,执行过程中发生中断进入中断上下文,在中断返回前进行进程调度。内核线程主动调用schedule函数进行进程调度。以上第一种和第二种情况可以统一起来,中断处理程序执行过程主动调用schedule函数进行进程调度,与前述两类调度时机对应。

2023-04-29 16:21:59 112

原创 以time/gettimeofday系统调用为例分析ARM64 Linux 5.4.34

el0_sync 在完成保存现场的工作之后,会根据 ESR_EL1 寄存器确定同步异常产生的原因,同步异常产生的原因很多,在 ARM64 Linux 中最常见的原因是 svc 指令触发了系统调用,所以排在最前面的就是条件判断跳转到 el0_svc , el0_svc 中主要负责调用C代码的 el0_svc_handler 处理系统调用和 ret_to_user 系统调用返回。流程和上次实验类似,但这次我们要自己写一个触发系统调用的内嵌汇编代码。配置项和上一个实验类似,但是要注意设置为Arm64环境。

2023-04-25 23:44:07 55

原创 高软作业——分析Lab5.2的Callback函数调用

** 函数定义*/= NULL)//函数使用给Linktable增加Callback方式的接口,需要两个函数接口,一个是call-in方式函数,如代码中SearchLinkTableNode函数,其中有一个函数作为参数,这个作为参数的函数就是callback函数,如代码中Conditon函数。

2023-03-29 15:02:17 123

原创 配置VSCode跟踪调试Linux内核启动过程

构造一个Linux系统并跟踪分析Linux内核启动过程

2023-03-23 23:40:48 538

原创 编写menu第一版简单程序

选用go或rust编写menu项目,创建一个版本库,采用VS Code作为编译调试环境。撰写一个帖子,从创建版本库、配置VS Code编译调试环境、编写menu第一版简单程序,以及最终调试运行,完整记录下来,目标是为go或rust的开发者提供一个开发环境配置和工作流程的参考。

2023-03-18 19:43:56 63

原创 Linux操作系统分析Lab1(RISC-V汇编代码分析)

将一个简单的C程序汇编成LoongArch或RISC-V汇编代码,并逐步分析程序的执行过程,深入理解存储程序计算机和函数调用堆栈框架在执行过程中所起的作用

2023-03-14 17:13:38 271

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除