首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

进程会话、控制终端概念,如何创建守护进程

; • 终端进程ID为-1(TPGID表示终端进程ID,该值表示与控制终端相关的前台进程,如果未和任何终端相关,其值为-1; • 所有的守护进程的父进程: 历史上,Linux 的启动一直采用init...与控制终端建立连接的会话领头进程也称为控制进程 (controlling process) 。一个会话只能有一个控制终端。 前台进程进程中的进程能够向终端设备进行读、写操作的进程。...进程、对话期和控制终端关系 每个会话有且只有一个前台进程,但会有0个或者多个后台进程。 产生在控制终端上的输入(Input)和信号(Signal)将发送给会话的前台进程中的所有进程。...在Linux中,每当系统发现一个孤儿进程,就会自动由1号进程收养。原先的子进程就会变成init进程的子进程。 2. 在子进程中创建新会话 setsid()函数的作用。...; • 终端进程ID为-1; • 守护进程的父进程为1516,即systemd。 作者:一口Linux

1.3K20

进程会话、终端的概念深入理解守护进程

写在前面 「守护进程」是 Linux 的一种长期运行的后台服务进程,也有人称它为「精灵进程」。...如果想要深入理解「守护进程」基本原理,那么必须要首先理解 Linux进程进程会话、终端等概念。 1、进程 进程Linux 进行资源分配的最小单位 前台进程,例如这样:$ ....3、会话(session) 多个进程组构成一个「会话」,建立会话进程会话的领导进程,该进程 ID 为会话的 SID。会话中的每个进程称为一个「作业」。...会话可以有一个进程称为会话的「前台作业」,其它进程为「后台作业」 一个会话可以有一个控制终端,当控制终端有输入和输出时都会传递给前台进程,比如Ctrl + Z。...这个步骤主要是要与继承父进程会话进程、终端脱离关系。 3、禁止子进程重新打开终端 此刻子进程会话组长,为了防止子进程重新打开终端,再次 fork 后退出父进程,也就是此子进程

95620
您找到你想要的搜索结果了吗?
是的
没有找到

Linux内核编程--进程和守护进程

会话进程 进程进程是多个进程的集合, 接收同一个终端的各类信号信息。进程调用setpgid(pid, pgid)可以加入一个现有的进程或者创建一个新的进程。...作业:是一个进程,作业分为前台作业(前台进程),后台作业(后台进程) 会话会话是若干进程的集合。会话有一个前台进程和多个后台进程。...b.进程调用完此函数,会成为新会话会话进程(session leader),该进程会成为一个新进程的头部进程,新进程ID就是这个进程的ID。 c.该进程没有控制终端。...与控制终端建立连接的会话进程被称为控制进程。 对于有控制终端的会话,同一时刻只能有一个进程能够称为前台进程会话中的其他进程都是后台进程。...子进程继承了父进程进程ID,不过它有自己的进程ID,这就保证了子进程不是一个进程的头部进程 Step.3 调用setsid( ),给守护进程创建一个新的进程会话,使当前进程成为新进程的头部进程

2.9K20

Linux进程调度-调度及带宽控制

概述 调度(task_group)是使用Linux cgroup(control group)的cpu子系统来实现的,可以将进程进行分组,按来分配CPU资源等。...比如,看一个实际的例子: A和B两个用户使用同一台机器,A用户16个进程,B用户2个进程,如果按照进程的个数来分配CPU资源,显然A用户会占据大量的CPU时间,这对于B用户是不公平的。...调度就可以解决这个问题,分别将A、B用户进程划分成组,并将两的权重设置成占比50%即可。...CFS调度器管理的是sched_entity调度实体,task_struct(代表进程)和task_group(代表进程)中分别包含sched_entity,进而来参与调度; 关于调度的相关数据结构...sched_entity结构中存在parent指针,指向它的父结构,因此,系统的运行也能从下而上的进行遍历操作,通常使用函数walk_tg_tree_from进行遍历; 2.2 task_group权重 进程进程都有权重的概念

1.7K30

Linux 调度浅析

cgroup 与调度 linux内核实现了control group功能(cgroup,since linux 2.6.24),可以支持将进程分组,然后按来划分各种资源。...cgroup支持很多种资源的划分,CPU资源就是其中之一,这就引出了调度。 linux内核中,传统的调度程序是基于进程来调度的(参阅《Linux 进程调度浅析》)。...在linux内核中,使用task_group结构来管理调度的。所有存在的task_group组成一个树型结构(与cgroup的目录结构相对应)。...(参见《linux内核SMP负载均衡浅析》。近期会推送给大家) 的调度策略 调度的主要数据结构已经理清了,这里还有一个很重要的问题。...实时进程调度 从《Linux 进程调度浅析》一文可以看到,实时进程是对CPU有着实时性要求的进程,它的优先级是跟具体任务相关的,完全由用户来定义的。调度器总是会选择优先级最高的实时进程来运行。

3.4K52

图解|Linux 调度

为了解决这个问题,Linux 实现了 调度 这个功能。那么什么是 调度 呢? 调度 的实质是:调度时候不再以进程作为调度实体,而是以 进程 作为调度实体。...# 在进程A中创建进程C $ echo 1923 > /sys/cgroup/cpu/A/cgroup.procs # 向进程A中添加进程ID为1923的进程 Linux 在调度的时候,首先会根据...在分析之前,为了对 完全公平调度算法 有个大体了解,建议先看看这篇文章:《Linux完全公平调度算法 》。 1. 进程Linux 内核中,使用 task_group 结构表示一个进程。...完全公平调度算法 在调度时是通过 cfs_rq 结构完成的,cfs_rq 结构使用一棵红黑树将需要调度的进程或者进程组组织起来,然后选择最左端的节点作为要运行的进程进程,详情可以参考文章:《Linux...Linux 调度的时候,就是从上而下(从根进程开始)地筛选出最优的进程进行运行。 2.

3.2K10

Linux 用户和

Linux 用户和 1、用户和的概念 用户的作用: Authentication:认证 Authorization:授权 Accouting:审计 用户存在的最终目的: 为了实现资源的分派 的作用...: 将具有相同特征的用户放在一起组成一个整体 当用户过多时方便管理 1.1Linux安全上下文 Linux通过安全上下文的概念完成用户权限的指派。...先判断用户是否是某文件的属主 再判断用户是否是该文件属中的一员 最后定其为其它用户 运行中的程序:进程(process) 以进程发起者的身份运行 root:cat zsl:cat 进程所能够访问的所有资源的权限取决于进程的发起者身份...---- 2 用户分类 Linux分为root用户、系统用户、普通用户: 用户分类 用户ID(uid) root用户 0 系统用户 1~499(为守护类进程获取系统资源而完成权限指派的用户) 普通用户...500~65535(为了完成交互式登录使用的用户) ---- 3 的分类 用户组分类 特性 基本组 用户的默认 附加组(额外) 基本组以外的其它 ---- 4、用户和相关的配置文件 4.1

4.3K30

linux怎么创建用户和用户_linux查看用户

1、linux里查看所有用户 (1)在终端里.其实只需要查看 /etc/passwd文件就行了. (2)看第三个参数:500以上的,就是后面建的用户了.其它则为系统的用户..../shadow和 /etc/passwd 创建/etc/passwd ,然后会删除 /etc/shadow 文件; finger 注:查看用户信息工具 id 注:查看用户的UID、GID及所归属的用户...visodo 是编辑 /etc/sudoers 的命令;也可以不用这个命令,直接用vi 来编辑 /etc/sudoers 的效果是一样的; sudoedit 注:和sudo 功能差不多; 3、管理用户(...group)的工具或命令; groupadd 注:添加用户; groupdel 注:删除用户; groupmod 注:修改用户信息 groups 注:显示用户所属的用户 grpck grpconv...etc/gshadow 不存在则创建; grpunconv 注:通过/etc/group 和/etc/gshadow 文件内容来同步或创建/etc/group ,然后删除gshadow文件 首先创建用户

18.1K20

Linux用户和管理

用户分类 超级用户:root,UID=0 普通用户:具有操作系统有限的权限,500<=UID<=65535(2^32-1),有限个 伪用户:为了安全,1<=UID<=499 伪用户解释:linux...伪用户一般和系统或者程序服务相关,比如bin,daemon,shutdown ,halt等,linux默认都有这些伪用户,伪用户通常不需要或无法登陆系统(nologin),可以没有宿主目录 用户和的配置文件...UID:Linux系统中惟一的用户标识,用于区别不同的用户。在系统内部管理进程和文件保护时使用 UID字段。...在Linux系统中,注册名和UID都可以用于标识用户,只不过对于系统来说UID更为重要;而对于用户来说注册名使用起来更方便。...#将mingxing的名称改为mingxing1 删除 groupdel mingxing 查看 cat /etc/group #查看所有 groups liuyifei #查看用户所在的

2.5K20

linux用户与管理

linux用户管理 linux用户分类 超级用户:root uid=0 用户身份user identify 普通用户:可以登录系统 uid 500-60000 程序用户:程序依托一个用户的权限,权限非常小...字段9:目前没有定义 每一个用户都必须拥有一个基本组,多个附加组(公共) /etc/group 存储着账号信息 /etc/group文件格式: root:x:0:root 字段1:名 字段2:密码占位符...符号 -U 解锁用户 linux管理 查看信息 cat /etc/group /etc/group文件格式 root:x:0:root 字段1:名 字段2:密码占位符 字段3:id(gid)...字段4:组成员 管理命令 创建 groupadd 名 -g 指定id 修改gid groupmod -g 1500 名 添加成员 gpasswd -a 用户名 名 删除 groupdel...

2.5K10

Linux用户和管理,添加修改用户,添加修改组,加入,移除

: 1-499(centos6), 1-999(centos7)由系统保留,作为管理账号,对守护进程获取资源进行权限分配; 登陆用户:500-60000(centos6), 1000-60000(centos7...) 名称转换: usernameUID,通过/etc/passwd group: 标识: groupid, gid 管理员: root, UID=0 用户主要(主组): 用户必须属于一个且只有一个主组...(基本组); 基本组名同用户名,且仅包含一个用户,也叫私有(即,新建的用户,也会新建要给,但组里只有用户自己) 用户的附加组: secondary group 基本组以外的属于用户的附加族。.../etc/group: 及其属性信息。 /etc/gshadow: 密码及相关属性。 2..../etc/group 1.组群名称; 2.组群密码,通常不设定,密码记录在/etc/gshadow; 3. GID. id; 4. 以当前为附加组的用户列表。

6.7K10

Linux用户及管理

Linux下用户及管理 系统中的文件都有一个所属用户及所属 使用id命令可以显示当前用户的信息 使用passwd命令可以修改当前用户密码 每个用户拥有一个UserID,操作系统实际使用的是用户ID,...而非用户名 每个用户属于一个主组,属于一个或多个附属(一个用户最多有31个附属) 每个拥有一个GroupID 每个进程以一个用户身份运行,并受该用户可访问的资源限制 每个可登陆用户拥有一个指定的shell...环境 linux实现权限隔离机制(多用户) 操作系统识别用户: 用户:UID :GID(逻辑容器,包含用户;实现多个用户对于某个文件或者应用程序分配相同的权限) 用户ID为32位,从0开始,但是为了和老式系统兼容...,用户ID限制在60000以下 用户分类: 管理用户:ROOT UID:0 普通用户:500-65535 程序(系统)用户:1-499 组分类: 管理员/普通 基本组:Linux中,新建用户时,没有指定隶属于的...因为Linux安装后会建立一些特殊用户,一般0到499之间的值留给bin、mail这样的系统账号。

2.3K00

Linux用户及管理

Linux下用户及管理 系统中的文件都有一个所属用户及所属 使用id命令可以显示当前用户的信息 使用passwd命令可以修改当前用户密码 每个用户拥有一个UserID,操作系统实际使用的是用户ID,...而非用户名 每个用户属于一个主组,属于一个或多个附属(一个用户最多有31个附属) 每个拥有一个GroupID 每个进程以一个用户身份运行,并受该用户可访问的资源限制 每个可登陆用户拥有一个指定的shell...环境 linux实现权限隔离机制(多用户) 操作系统识别用户: 用户:UID :GID(逻辑容器,包含用户;实现多个用户对于某个文件或者应用程序分配相同的权限) 用户ID为32位,从0开始,但是为了和老式系统兼容...,用户ID限制在60000以下 用户分类: 管理用户:ROOT UID:0 普通用户:500-65535 程序(系统)用户:1-499 组分类: 管理员/普通 基本组:Linux中,新建用户时,没有指定隶属于的...因为Linux安装后会建立一些特殊用户,一般0到499之间的值留给bin、mail这样的系统账号。

2.4K40

本地和域

Windows系统使用的概念来管理用户。是用户帐户、计算机帐户和其他的集合;可以从安全的角度作为单个单元进行管理。可以是基于活动目录的,也可以是针对特定计算机的本地。...当为设置权限时,内的所有用户都会自动应用权限,因此就不需要单独为某个用户设置权限了。并且在学习域的过程中,我们经常会听到本地管理员、域管理员、企业管理员、全局和通用等概念。...通用 通用可以嵌套在其他中,其组成员可包括本域和域林中其它域的用户、全局和通用,但不能包括本域和域林中其它域的本地域。...RDS Endpoint Servers:此中的服务器运行虚拟机和主机会话,用户 RemoteApp 程序和个人虚拟桌面将在这些虚拟机和会话中运行。需要将此填充到运行 RD 连接代理的服务器上。...在部署中使用的 RD 会话主机服务器和 RD 虚拟化主机服务器需要位于此中。 RDS Management Servers:此中的服务器可以在运行远程桌面服务的服务器上执行例程管理操作。

91320

linux-用户-用户

,在幕后保障Linux 系统安全的则是一系列复杂的配置工作。...本博客即下篇博客将详细讲解以下几点 文件的所有者、所属 以及其他人可对文件进行的读(r)、写(w)、执行(x)等操作 以及如何在Linux系统中添加、删除、修改用户账户信息 我们还可以使用SUID、SGID...Linux 为了方便管理权限,引入了用户的概念,我们可以把多个用户加入到同一个中,从而方便为中的用户统一规划权限或者指定任务 假设有一个公司中有多个部门,每个部门中又有很多员工。...科普 在Linux系统中创建每个用户时,将自动创建一个与其同名的基本用户,而且这个基本用户只有该用户一个人。 如果该用户以后被归纳入其他用户,则这个其他用户称之为扩展用户。...就好比:技术、运维 增加组 groupadd [选项] 名 删除 groupdel 名 前提:内不能有用户,否则无法删除 修改用户的 Linux系统中的一切都是文件 因此在系统中创建用户也就是修改配置文件的过程

19.8K20

Linux用户、、权限和文件

Linux 的安全性 Linux安全系统的核心时用户账户。每个能进入Linux系统的用户都会被分配唯一的用户账户,用户对系统中各种对象的访问权限取决于他们登陆系统时用的账户。...这些账户叫作系统账户,是系统上运行的各种服务进程访问资源用的特殊账户。所有运行在后台的服务都需要用一个系统用户账户登录到Linux系统上。 在安全成为一个大问题之前,这些服务经常会用root账户登录。...密码 GID 组成员 wheelLinux中wheel就是类似于一个管理员的。通常在Linux下即使我们有了管理员,也不推荐用root用户登录。...媒体目录,可移动媒体设备的常用挂载点 /mnt 挂载目录,另一个可移动媒体设备的常用挂载点 /opt 可选目录,常用于存放第三方软件包和数据文件 /proc 进程目录...,存放现有硬件及当前进程的相关信息 /root root用户的主目录 /sbin 系统二进制目录,存放许多GNU管理员级工具 /run 运行目录,存放系统运作时的运行时数据

11.6K20
领券