完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1、Linux进程管理之基础知识介绍 进程就是处于执行期的程序,但进程不仅仅局限于一段可执行程序代码(也就是所谓的代码段,text section),从上面的数据结构可以看到,进程还包含其他的资源,比如打开的文件,挂起的信号,处理器状态,内核数据结构,内存映射地址空间等。 在操作系统中,内核的调度对象时线程,而不是进程。线程时进程中的活动对象。每个线程都拥有一个独立的程序计数器、进程栈和一组进程程寄存器。 在传统的 Unix 系统中,一个进程只包含一个线程,但是在现代操作系统中,一个进程可以包含多个线程。在 Linux 系统中线程的实现非常特别:它对线程和进程并不特别区分。对于 Linux 而言,线程只不过是一种特殊的进程罢了。后续的文章专门介绍进程和线程的创建过程进行分析。 在操作系统中,内核把进程的列表存放在一个叫任务队列的双向循环链表中,链表中的每个元素类型就是上述的数据结构 task_struct, 称为进程描述符的结构。该结构中包含了具体进程的所有信息。task_struct 在32位机器上,大约有1.7KB的大小。 task_struct 结构在内存中的存放 在分析之前,需要了解下一个概念 -- 内核栈。 我们知道一个在32系统中,进程的虚拟地址空间大小为4G。在这4G虚拟机制空间中有一段虚拟地址空间为栈的区域,该栈的区域为用户态栈。该栈记录的是在用户态进程的函数调用过程。 ![]() 原作者: Linux码农 |
|
飞凌嵌入式ElfBoard ELF 1板卡-开发板适配之ENET
244 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-开发板适配之电阻屏触摸
845 浏览 0 评论
881 浏览 0 评论
迅为RK3588开发板实时系统编译-Preemption系统/ Xenomai系统编译-实时系统烧写-烧写固件
715 浏览 0 评论
680 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-21 04:42 , Processed in 0.579064 second(s), Total 69, Slave 50 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191