为什么要加PRESERVE8栈的8字节对齐

2025-03-10 14:03:40
推荐回答(1个)
回答1:

linux下的cpu有两个状态:内核态和用户态,内核态的cpu的权限高于用户态下的cpu。
linux下的内存分为用户态内存和内核态内存,一般4个G内存,3个G的分给用户态,1个G分给内核态。
linux进程有时需要调用内核资源时,如读写文件,io读写等,这时候是通过系统调用实现对内核资源的访问的,在访问内核资源前是用户栈,经过系统调用进入到内核态时,cpu的状态也由用户态变为内核态,访问的内存就是内核态下管理的内存了-内核栈,对内核里的资源访问完返回,内存又回到了用户栈,cpu也回到用户态。