自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

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

在本次高级软件工程课程上,通过孟宁老师的授课,由近及远、由浅入深的了解了软件工程的内容。孟宁老师对该课程的讲解不同于以往本科所学习过的软件工程,在这学期的课程上,孟老师授课立足于实践,通过一个简易的menu程序一步步迭代更新,结合授课内容,让我对软件过程有了切身的体会,结合代码以及以往的开发经验,对整个过程有了更深的体会。

2023-07-10 00:11:56 101 1

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

通过需求分析和逆向工程,对 VS Code Remote Development的实现以及模块、功能设计有了更充分地理解,由此可以看出,通过需求分析和逆向工程两个重要环节,可以对软件所要实现的需求、软件的功能以及设计方案等有更深入和全面的认知,以更好的满足软件的设计需求。学号后三位:376。

2023-05-30 23:27:24 79

原创 Linux系统课程总结

在该课程上,对linux操作系统的原理以及底层有了更深刻的认知。以前只是停留在命令以及操作系统课程上的认知,经过课上学习,对linux运行原理、进程管理、文件系统管理、中断异常有了更清晰的了解。通过对Linux内核启动流程以及进程切换流程的跟踪,通过对源码的阅读,有了更深刻的印象,并且学习到了gdb调试方面的知识,增强了学习能力。学号后三位:376。

2023-05-15 20:32:29 110

原创 lab5 深入理解进程切换

如果当前进程是内核级线程,则需要设置 rq->prev_mm 用于后续清除引用计数,并执行 prev->active_mm = NULL 解除对 active_mm 的借用。对于用户进程和内核线程来说,两者的task_struct的mm成员是不同的,用户进程与active_mm相同,内核线程则为NULL。完成任务调度的准备工作,与 **finish_task_switch(prev)**成对出现。

2023-04-26 13:26:27 86 1

原创 作业3:深入理解Callback函数 376

具体而言,回调函数是将一个函数的指针作为参数传递给另一个函数,在后者执行过程中通过该指针调用前者。回调函数通常用于特定的响应操作,减小了模块之间的依赖。在满足Condition函数的参数条件下,我们可以自己设定Condition条件,将其作为参数传入即可,在不同的地方可以实现多种不同的功能,实现了代码的解耦,增强了代码的可重用性。在多线程情况下,主线程需要根据其他线程的执行结果做一定地处理,在此过程中,只需A向B注册回调函数,在B处理完之后使用该Callback函数返回处理结果给A即可。

2023-04-03 15:34:18 46 1

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

以el0_sync为例,在触发异常时首先做的就是保存执行现场,即寄存器信息等,然后根据异常原因跳转到el0_svc,el0_svc调用el0_svc_handler、el0_svc_common函数,将系统调用号传递给invoke_syscall函数。接着执行 invoke_syscall 函数,将通用寄存器中的内容传入 syscall_fn(),接着调用 __arm64_sys_gettimeofday。系统调用返回前,恢复程序现场,包括恢复ELR_EL1和SPSR_EL1的值。

2023-03-31 17:58:59 157

原创 lab3:基于VS Code的Linux内核调试环境搭建及start_kernel跟踪分析

lab3实验

2023-03-24 00:10:50 112 1

空空如也

空空如也

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

TA关注的人

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