当内核运行的时候,系统以内核态进入内核空间执行,而执行一个普通用户程序是,系统以用户态进入以用户空间执行。
应用程序通过系统调用界面陷入内核是应用程序完成其工作的基本行为方式。
处理器的活动可以概括为:运行与用户空间,执行用户进程;运行于内核空间,处于进程上下文,代表某个特定的进程执行;运行于内核空间,处于中断上下文,与任何进程无关,处理某个特定的中断
进程就是正在执行的程序代码的实时结果
内核调度的对象是线程

内核把进程的列表存放在叫做任务队列的双向链表中,列表中的每一项被称为进程描述符
进程的创建通过 fork() 和 exec() 函数
Linux fork()通过写时拷贝实现,资源的复制只有在需要写入的时候才进行,在此之前以只读的方式共享
Linux 把所有的线程当做进程进程来实现,线程仅仅被视为一个与其他进程共享某些资源的进程。
网友评论