Linux 进程详解

进程:正在运行的程序(每个运行着的程序实例就构成一个进程)

  一般来说,Linux系统会在进程之间共享程序代码和系统函数库,所以在任何时刻内存中都只有代码的一份副本。(在任何时刻内存中都只有代码的一份副本???)

程序代码和系统函数库可以被多个进程安全的共享。

举例:

  1. 程序代码可以共享:多个用户可以调用同一个程序代码(同一个函数)

  2. 系统函数库也可以被共享:不管有多少个正在运行的程序要调用printf函数,内存中只要有它的一份副本即可。



  每个进程都会被分配一个唯一的数字编号,我们称之为进程标识符PID。它通常是一个取值范围从2到32768的正整数。当进程被启动时,系统将按顺序选择下一个未被使用的数字作为它的PID,当数字已经回绕一圈时,新的PID重新从2开始。数字1一般是为特殊进程init保留的,init进程负责管理其他进程。

原文地址:https://www.cnblogs.com/PHL666/p/10750897.html

时间: 2024-08-12 21:01:29

Linux 进程详解的相关文章

unix/linux进程详解

启动新进程 stdlib.h int system(const char *string) which equals to “sh -c string” 替换进程映像 unistd.h char **environ; int execl(const char *path, const char *arg0, ...(char *)0); int execlp(const char *file, const char *arg0, ...(char *)0); int execle(const c

Linux进程详解

本文实际上是 "UNIX环境高级编程" 的读书笔记. 所以许多细节并没有表述出来, 想要刨根问底的同学建议再看看原书. 之所以把读书笔记贴到博客上, 出于两个目的: 1. 加深自己的学习效果. 2. 提供一个快速浏览的方式. 本文提到的技术在下面的环境中实际验证过: Linux version 2.6.18-164.el5 x86_64 GNU/Linux (gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)) 程序和进程 程序是指磁盘上的可执行

Linux学习之守护进程详解

Linux系统守护进程详解                                                              ---转自:http://yuanbin.blog.51cto.com/363003/107306/,多谢分享 不要关闭下面这几个服务: acpid, haldaemon, messagebus, klogd, network, syslogd 1. NetworkManager, NetworkManagerDispatcher NetworkM

Linux 目录详解 树状目录结构图

1.树状目录结构图 2./目录 目录 描述 / 第一层次结构的根.整个文件系统层次结构的根目录. /bin/ 需要在单用户模式可用的必要命令(可执行文件):面向所有用户,例如:cat.ls.cp,和/usr/bin类似. /boot/ 引导程序文件,例如:kernel.initrd:时常是一个单独的分区[6] /dev/ 必要设备, 例如:, /dev/null. /etc/ 特定主机,系统范围内的配置文件. 关于这个名称目前有争议.在贝尔实验室关于UNIX实现文档的早期版本中,/etc 被称为

Linux信号详解

Linux信号详解 一 信号的种类 可靠信号与不可靠信号, 实时信号与非实时信号 可靠信号就是实时信号, 那些从UNIX系统继承过来的信号都是非可靠信号, 表现在信号 不支持排队,信号可能会丢失, 比如发送多次相同的信号, 进程只能收到一次. 信号值小于 SIGRTMIN的都是非可靠信号. 非可靠信号就是非实时信号, 后来, Linux改进了信号机制, 增加了32种新的信号, 这些信 号都是可靠信号, 表现在信号支持排队, 不会丢失, 发多少次, 就可以收到多少次. 信号值 位于 [SIGRTM

10.Linux系统启动详解

10.Linux系统启动详解 ·1.BIOS,负责检查硬件并且查找可启动设备, ·2.MBR:Boot Code, ·bios找到可启动设备后执行其引导代码,MBR的前446字节, ·/boot/grub/stage1内容为当前硬盘MBR的镜像, ·3.执行引导程序-GRUB ·grub是现在Linux使用的主流引导程序,可以用来引导大多数主流系统, ·Linux的grub可以识别windows的启动程序,但windows的会覆盖Linux的,故先windows后Linux, ·grub相关文件

Linux procfs详解

1.0 proc文件系统总览在类Unix系统中体现了一种良好的抽象哲学,就是几乎所有的数据实体都被抽象成一个统一的接口--文件来看待,这样我们就可以用一些简单的基本工具完成大量复杂的操作.在Linux中存在着一类特殊的伪文件系统,用于使用与文件接口统一的操作来完成各种功能,例如ptyfs.devfs.sysfs和procfs.而procfs就是其中应用最广泛的一种伪文件系统.procfs是Linux内核信息的抽象文件接口,大量内核中的信息以及可调参数都被作为常规文件映射到一个目录树中,这样我们就

Linux命令详解之—tail命令

tail命令也是一个非常常用的文件查看类的命令,今天就为大家介绍下Linux tail命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux tail命令主要用来从指定点开始将文件写到标准输出.很多人喜欢使用tail –f 来监控日志文件. 一.Linux tail命令格式 Linux tail命令 格式如下所示 tail [OPTION]... [FILE]... Linux tail命令 参数如下所示 -f 循环读取 -q 不显示处理信息 -v 显示详细的处理信息 -c

Linux内存详解

--Linux内存详解 -----------------2014/05/24 Linux的内存上表现的不像windows那么直观,本文准备详细的介绍一下Linux的内存. 请看这下有linux命令free和vmstat输出的内存信息. Mem行used表示已经分配的内存,free表示尚未分配的内存,shared表示共享内存. 计算方法:缓存统计行free=Mem(free)+Mem(buffers)+Mem(cached) 共享内存 对于共享内存(Shared memory),主要用于在UNI