2023-2024-1 20232811《Linux内核原理与分析》第六周作业

202328 2023-10-29 13:26:53

目录

一、实验过程

1.打开实验楼,进入LinuxKernel,从https://github.com/torvalds/linux/blob/v3.18-rc6/arch/x86/syscalls/syscall_32.tbl中克隆menu

2.修改test.c文件,在test.c中加入getpid和getpidasm函数,重新编译成功后,输入help命令可以看到新增的功能

3.回到LinuxKernel目录下执行

4、在sys_getpid处设置断点,发现在执行getpid_asm时停下了,一直按n进行若干次单步执行进入schedule函数。

二、根据本周所学知识分析系统调用的过程,从 system_call 开始到 iret 结束之间的整个过程,并画出简要准确的流程图

三、总结

四、ChatGPT辅助学习


一、实验过程

1.打开实验楼,进入LinuxKernel,从https://github.com/torvalds/linux/blob/v3.18-rc6/arch/x86/syscalls/syscall_32.tbl中克隆menu

2.修改test.c文件,在test.c中加入getpid和getpidasm函数,重新编译成功后,输入help命令可以看到新增的功能

  getpid和getpidasm函数

int Getpid(int argc,char*argv[]){
    int pid;
    pid = getpid();
    printf("pid=%d\n",pid);
    return 0;
}

int Getpidasm(int argc, char *argv[]){
    int pid;
    asm volatile(
            "mov $0,%%ebx\n\t"
            "mov $0x14,%%eax\n\t"
            "int $0x80\n\t"
            "mov %%eax,%0\n\t"
            :"=m"(pid)
            );
    printf("pid = %d\n",pid);
    return 0;
}

3.回到LinuxKernel目录下执行

qemu-kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img -s -S

  再打开另一个终端进行调试

gdb  file linux-3.18.6/vmlinux

gdb  target remote:1234

4、在sys_getpid处设置断点,发现在执行getpid_asm时停下了,一直按n进行若干次单步执行进入schedule函数。

 

 

二、根据本周所学知识分析系统调用的过程,从 system_call 开始到 iret 结束之间的整个过程,并画出简要准确的流程图

三、总结

本次实验中,我使用了gdb工具跟踪分析了Linux内核中的两个系统调用函数:getpid 和 getppid。这帮助我更深入地理解了系统调用的执行过程,包括用户空间和内核空间之间的切换、参数传递、系统调用号的解析等。通过调试和观察寄存器状态的变化,我成功捕获了系统调用的执行步骤,并进一步绘制了流程图,以更清晰地展示系统调用的执行过程。


四、ChatGPT辅助学习

 

 

...全文
562 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文针对交直流混合数据中心园区的能源供应与算力资源协同问题,提出了一种多源-算力协同供电协调规划方法。该方法深度融合电力系统与信息计算系统,综合考虑光伏、风电、市电等多种能源形式与算力负载的时空耦合特性,通过构建多目标优化模型实现能源供给与算力需求的动态匹配与联合优化。研究设计了兼顾经济性、能效性与供电可靠性的综合评价体系,并采用Matlab进行建模仿真,对不同运行场景下的规划方案进行了对比分析,有效验证了所提方法在降低综合运营成本、提升能源利用效率和增强系统韧性的优越性能。; 适合人群:具备电力系统、能源管理、计算机系统或自动化等相关专业背景,从事数据中心、综合能源系统(IES)、新能源优化、算力网络等交叉领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①为交直流混合架构的数据中心园区提供科学合理的多能协同供电与算力资源联合规划方案;②实现算力任务调度与多源供电策略的深度协调优化,最大化可再生能源消纳,提升整体能源效率与系统运行可靠性;③为其他涉及“能源-信息”深度融合的综合能源系统优化调度研究提供理论参考与Matlab代码实现基础。; 阅读建议:本文是典型的跨学科交叉研究,阅读时应重点关注其多目标优化建模的构建逻辑、多源-算力协同机制的设计原理以及目标函数与约束条件的数学表达。建议结合所提供的Matlab代码,动手复现仿真过程,深入理解模型求解细节,从而更好地掌握该方法的核心思想,并尝试将其迁移应用于自身相关的优化问题研究中。

39

社区成员

发帖
与我相关
我的任务
社区描述
北京电子科技学院 《Linux内核原理与分析》课程
linuxarm开发系统安全 高校 北京·丰台区
社区管理员
  • rocflytosky
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧