`
网络接口
  • 浏览: 43783 次
文章分类
社区版块
存档分类
最新评论

linux的会话和进程组

 
阅读更多

会话: 一个或多个进程组。起于用户登录,终止于用户退出。此期间所有进程都属于这个会话期。
会话首进程:调用setsid创建会话的进程
1.规定组长进程不能调用setsid,因为调用setsid后,调用进程会成为新的进程组的组长进程.
如何保证? 先调用fork,然后终止父进程,此时由于子进程的进程组ID为父进程的进程组ID,而子进程的ID是重新分配的,所以保证子进程不会是进程组长,从而子进程可以调用setsid。
2.调用setsid后,
1)调用进程变成会话首进程
2)调用进程成为新的进程组的组长进程
3)删除控制终端
进程组:一个或多个进程。
组长进程: 进程ID==进程组ID
调用setpgid和setsid都会创建进程组。

分享到:
评论

相关推荐

    编写Linux守护进程

    编写 Linux 守护进程需要了解多个概念,如子进程、进程组、会晤期、信号机制、文件、目录和控制终端等。 要编写一个 Linux 守护进程,需要遵循以下八条经验: 1. 屏蔽一些有关控制终端操作的信号,以防止守护进程...

    Linux系统中守护进程的创建方法.pdf

    守护进程与 Windows 中的后台服务程序比较类似,如 Windows 中有一种 time 系统服务,用来从远程主机获得日期和时间,Linux 中也有类似 的两个守护进程 time 和 time-udp,分别采用 TCP 和 UDP 协议从远程主机获得...

    Linux系统下守护进程编程方法.pdf

    在Linux系统下,守护进程创建时,会从父进程继承打开的文件描述符、控制终端、会话、进程组、工作目录和文件的创建掩码等。通常情况下,这会对进程的创建带来很多方便,但是守护进程需要避免父进程对它造成的影响。 ...

    守护进程简介,个人使用

    一个会话可以包括多个进程组,这些进程组可被分为一个前台进程组和一个或多个后台进程组。 为什么要分呢?前台进程组是指需要与终端进行交互的进程组(只能有一个),比如有些进程是需要完成 IO 操作的,那么这个...

    linux技巧之使用screen管理你的远程会话.docx

    * 会话期:一个或多个进程组的集合,有唯一一个会话期首进程,会话期 ID 为首进程的 ID。 * 控制进程:会话期首进程,与控制终端连接的会话期首进程。 * 前台进程:当前与终端交互的进程。 问题: * 当使用 ssh 或...

    一种LINUX操作系统守护进程的编程实现方法.pdf

    第二步,脱离控制终端,登陆会话和进程组;第三步,禁止进程重新打开控制终端;第四步,关闭打开的文件描述符;第五步,改变当前工作目录;第六步,重设文件创建掩模;第七步,处理SIGCHLD信号。 在Linux操作系统下...

    linux 进程流量监控

    linux 进程流量监控 rpm包 直接rpm -ivh 然后net nethogs eth0 eth1...

    kingking888#web.d#Linux下守护进程的创建及原理1

    进程、进程组、会话、控制终端之间的关系进程组:由一个或者多个进程组成,进程组号(GID),就是这些进程中的进程组长的 PID会话:又叫会话期,它包括了期间所有的

    详解linux下避免僵尸进程的几种方法

    linux下我们可以调用fork函数创建子进程,创建的子进程将会得到父进程的数据空间、堆、栈……副本(采用写时复制机制),子进程将会继承父进程的信号掩码、信号处理方式、当前工作目录、会话id、组id……。当子进程...

    实验六 进程管理.docx

    通过实验熟悉Linux操作系统环境,掌握与进程相关命令的使用方法。 实验要求 1. 掌握Linux系统中进程的组织结构 2. 掌握会话、进程、进程组和作业的关系 3. 理解前后台进程与控制终端的关系

    linux 创建守护进程的相关知识

    在Linux中父进程先于子进程退出会造成子进程成为孤儿进程,而每当系统发现一个孤儿进程是,就会自动由1号进程(init)收养它,这样,原先的子进程就会变成init进程的子进程。 在子进程中创建新会话 这个步骤是创建...

    进程管理经典软件MFC

     smss.exe 进程文件: smss or smss.exe 进程名称: Session Manager Subsystem 描述: 该进程为会话管理子系统用以初始化系统变量,MS-DOS驱动名称类似LPT1以及COM,调用Win32壳子系统和运行在Windows登陆过程。...

    Linux命令大全完整版

    Linux 系统管理命令是 Linux 操作系统中最重要的一部分,掌握这些命令可以帮助用户更好地管理和维护 Linux 系统。本资源将对 Linux 命令大全进行详细的介绍和解释。 adduser adduser 命令用于添加新用户到 Linux ...

    linux程序设计(第三版)

    第Ⅰ部分系统讨论用于文件、进程和打印机控制的LINUX和UNIX命令和工具,并介绍登录和退出过程、文件安全以及文件系统的备份和恢复;通过这些命令和工具,您可以有序、高效并安全地使用他人的LINUXUNIX系统。本书的...

    Linux内核完全剖析

    上册包括预备知识、存储管理、中断和系统调用、进程和进程调度、文件系统以及传统的Unix进程间通讯共六章,下册则分基于Socket的进程间通讯、设备驱动、多处理器SMP系统结构以及系统引导和初始化四章。上下两册不可...

    Linux应用技术:二Linux初体验Linux基本操作.pptx

    Init进程 Linux命令操作界面 启动与关闭系统 Linux的启动与关闭 选择登录用户 选择使用语言 选择启动会话的模式 重新启动 关机 Linux命令基本格式 格式: 命令 [-选项] 参数 例如: 关机操作命令的使用 # shutdown ...

    linux启动jboss

    本篇文章详细介绍了如何在 Linux 平台上启动 JBoss 服务器,包括安装 JRE、安装 JBoss 服务器、启动 JBoss 服务器、关闭 JBoss 服务器和退出 SSH 会话等步骤。通过本篇文章,读者可以轻松地在 Linux 平台上启动 ...

    Linux 操作系统日志管理全攻略

    在 Linux 系统中,有三个主要的日志子系统:连接时间日志、进程统计和错误日志。 连接时间日志是由多个程序执行,把纪录写入到 /var/log/wtmp 和 /var/run/utmp,login 等程序更新 wtmp 和 utmp 文件,使系统管理员...

    兰州大学操作系统实验三实验报告.docx

    兰州大学操作系统实验三实验报告 ...getty 是用户登录进程,负责用户登录和会话管理。 本实验报告对 Linux 操作系统中的进程管理机制进行了详细的介绍,包括进程的家族关系、进程的状态、进程的管理命令等。

    Linux高性能服务器编程

    7.1.2 syslog函数 7.2 用户信息 7.2.1 UID、EUID、GID和EGID 7.2.2 切换用户 7.3 进程间关系 7.3.1 进程组 7.3.2 会话 7.3.3 用ps命令查看进程关系 7.4 系统资源限制 7.5 改变工作目录和根目录 7.6 ...

Global site tag (gtag.js) - Google Analytics