自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【无标题】

在虚拟化环境中,物理主机上的虚拟化软件(如VMware、KVM等)启动,并创建虚拟机管理器(VMM)或称为hypervisor。VMM负责管理虚拟机的创建、销毁和资源分配。

2023-05-15 17:20:09 75 1

原创 深入理解进程切换

最后,调用 finish_task_switch 函数,完成进程切换,这个函数与第一步的prepare_task_switch函数是成对出现的,用来完成一些清理操作。调度队列是一个序列,rq指本次进程切换时的运行队列,prev指向切换前的进程,next指向切换后进程。1.在进程切换前调用prepare_task_switch函数来使得内核执行一些相关的指令。2.调用 arch_start_context_switch 函数开始进行进程切换。决定切换到内核模式还是用户模式。3.下面的代码进行进程地址切换。

2023-05-02 20:10:52 137 1

原创 【无标题】

然后通过__invoke_syscall函数执行该系统调用内核处理函数,也就是将__invoke_syscall函数的两个参数regs和syscall_fn变为调用syscall_fn(regs),regs中存储着系统调用参数(regs->regs[0-5])和系统调用号(regs->regs[8]),从而执行该系统调用内核处理函数。最后将系统系统调用内核处理函数的返回值保存到内核堆栈里保存x0的位置,以便将返回值在恢复现场系统调用返回时可以传递到用户态x0寄存器。修改profile文件内容。

2023-03-30 20:58:12 65

原创 【无标题】

linux

2023-03-23 19:17:17 126

原创 linux实验

操作系统使用eip寄存器通过总线将代码和指令从内存中读入到CPU中执行。在程序运行的过程中,通过函数调用等手段可以改变eip中的值来改变指令的执行顺序,这个过程涉及到ebp、esp等寄存器。%ebp:堆栈指针,典型的用法是配合push和pop汇编指令间接改变自身,%ebp就是栈顶指针;%eax:默认“累加器”,也是一个通用寄存器,往往也是存储函数返回值的寄存器。%esp:“基址指针”,一般作为一个函数的框架指针;通过汇编理解存储程序计算机和和函数调用框架。unbutu 64位系统。

2023-03-14 22:06:48 54

空空如也

空空如也

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

TA关注的人

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