- 博客(8)
- 收藏
- 关注
原创 Linux课程总结报告
借助虚拟化技术,用户能以单个物理硬件系统为基础创建多个模拟环境或专用资源。称为"Hypervisor"(虚拟机监控程序)的软件可直接连接到硬件,从而将一个系统划分为不同的、单独安全环境,即虚拟机(VM)。虚拟机监控程序能够将计算机资源与硬件分离并适当分配资源。配备了虚拟机监控程序的物理硬件叫做"主机",而使用其资源的虚拟机则被称为虚拟客户机。虚拟化主要是指通过软件实现的方案,常见的体系结构是一个直接在物理主机上运行虚拟机管理程序的虚拟化系统。在。
2023-05-17 23:30:31
177
1
原创 Linux操作系统分析Lab5:深入理解进程切换
Linux 是一个多任务操作系统,它能支持远大于 CPU 数量的任务同时运行。但实际上同一时刻只会有 CPU 数量的进程在运行,等 CPU 时间片到了之后,进程调度器就会把 CPU 资源分配给其他进程。在这个过程中就会涉及到进程之间的切换,这时候就需要将当前进程的上下文信息保存下来,随后加载被调度进程的上下文信息,这就是上下文切换。这里所说的上下文信息,既包括虚拟内存、栈、全局变量等用户态的资源,也包括内核堆栈、寄存器等内核态的资源。本文以arm64和x86为例,分析Linux内核中进程切换的具体操作。
2023-04-25 23:39:13
169
原创 分析 time/gettimeofday 系统调用
el0_sync 在完成保存现场的工作之后,会根据 ESR_EL1 寄存器确定同步异常产生的原因,同步异常产生的原因很多,在 ARM64 Linux 中最常见的原因是 svc 指令触发了系统调用,所以排在最前面的就是条件判断跳转到 el0_svc , el0_svc 中主要负责调用C代码的 el0_svc_handler 处理系统调用和 ret_to_user 系统调用返回。和上一个实验类似,但是这次是跟踪系统调用,所以我们需要准备调用系统调用的代码。把test.c进行交叉编译。打包成内存根文件系统镜像。
2023-03-30 23:53:06
352
原创 2020牛客寒假算法基础集训营4知识点总结
只罗列一些设计算法和STL的题目,其余的题目都是贪心或者推公式题。可以参考官方题解:https://ac.nowcoder.com/discuss/365889?type=101&order=0&pos=5&page=21、欧几里得讲解的博客:https://blog.youkuaiyun.com/ltrbless/article/details/86770606第一题注意题中...
2020-02-12 11:00:18
230
原创 轻院2218: 小明的数字游戏( 给你n个数字,把这n个数字拼接起来,最大能拼出的数字是多少?)
题目链接:http://acm.zzuli.edu.cn/problem.php?id=2218这题两个坑点,第一多位数数目较多,这个地方要注意排序的方法(这里还可以进行优化,但本弱不会,望大神指点指点),第二注意前导零。解题方法就是两个字符串拼接经行比较大小,例如样例输入中的13和312,组合起来31213比13312打,所以把312放前面。这里用到了c++的string的知识,可以两个直...
2019-01-04 22:37:14
1853
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人