Linux复习笔记-001-进程的管理】的更多相关文章

1.什么是进程? 进程是已经启动的可执行的程序运行实例. 程序是二进制文件,静态 ./bin/date/ /usr/sbin/ 进程:是程序运行的过程 2.Linux为1的进程? centos5或6为1的进程是init centos7的PID为1的进程是systemd 3.什么是僵尸进程? 父进程退出了,子进程没有退出,那么这些子进程就没有父进程来管理,就变成了僵尸进程.…
1.进程基础 当输入一个命令时,shell 会同时启动一个进程,这种任务与进程分离的方式是 Linux 系统上重要的概念 每个执行的任务都称为进程,在每个进程启动时,系统都会给它指定一个唯一的 ID,称为进程 ID(PID) 对进程进行管理必须以进程 ID 作为对象,而非进程名称 每个进程都可能以前台或后台两种方式存在,bg 表示后台执行,fg 表示前台执行 在命令后加 & 使进程在后台执行 2.显示进程 可以使用 ps 命令(Process Status)显示当前运行的进程,显示的内容如下:…
原文:linux内核笔记之进程地址空间 进程的地址空间由允许进程使用的全部线性地址组成,在32位系统中为0~3GB,每个进程看到的线性地址集合是不同的. 内核通过线性区的资源(数据结构)来表示线性地址区间,线性区是由起始线性地址,长度和一些访问权限来描述的.线性区的大小为页框的整数倍,起始地址为4096的整数倍. 下图展示了x86 Linux 进程的地址空间组织结构: 正文段 .text ,这是CPU执行的机器指令部分.通常正文段是共享的,而且是只读的,以防止程序修改其自身的指令. 数据段 .d…
Linux学习笔记之rpm包管理功能全解 https://www.cnblogs.com/JetpropelledSnake/p/11177277.html rpm 的管理命令 之前学习过 yum 的 其实感觉活学活用 非常有用处 阅读目录 0x00 软件包管理器 0x01 程序包管理器的组成 0x02  获取可靠安全程序包的途径 0x03 rpm包命名格式 0x04 CentOS系统上rpm命令管理程序包 参考 0x00 软件包管理器 所有的软件都是由文件格式的程序代码(即源代码),经过编译成…
菜鸟初学: 1. 查看进程用的命令: ps 具体用法 ps -A ro ps -e 显示所有进程 ps -u root 显示root 用户的进程 ps -u root -N 显示非root用户的进程 ps -ejH 使用ps列出进程树 ps -eLf 显示线程信息 pgrep docker 查找进程 pstree 显示进程的树状关系. top 显示系统的动态视图 2. 安装htop 和 atop 来更好的监控性能 安装方法,说先安装epel库: yum install epel-release…
1.struct task_struct 进程内核栈是操作系统为管理每一个进程而分配的一个4k或者8k内存大小的一片内存区域,里面存放了一个进程的所有信息,它能够完整的描述一个正在执行的程序:它打开的文件,进程的地址空间,挂起的信号,进程的状态,从task_struct中可以看到对一个正在执行的程序的完整描述. 进程描述符: struct thread_info { struct task_struct *task; /* main task structure */ unsigned long…
第一次接触GNU/Linux还是大四上学期实习的那两个月在window里装了 个虚拟机玩红帽的系统,那段时间稍微学了一点命令就不玩了.后来大四下学期认识了王总,装了双系统,那段时间又对linux有了进一步认识并产生了很大的 兴趣.直到上学期突然发疯把笔记本装debian8以后才完全进入linux的世界.学习真的是一个螺旋式上升的过程.下面进入正题: ---Linux的基本原则: 1.由目的单一的小程序组成,组合小程序完成复杂任务(KISS:keep it simple,stupid)2.一切皆文…
一 管道的作用 通常把一个进程的输出通过管道连接到另一个进程的输入. 二 popen和pclose函数 #include <stdio.h> FILE *popen(const char *command, //是要运行的程序名和相应的参数 const char *open_mode //必须是“r”或者“w”,如果是其它值,errno将返回EINVAL ); int pclose(FILE *stream_to_close); popen() 函数通过创建一个管道,调用 fork 产生一个子…
一.基础知识 1:进程. 1,进程ID: 非负整数,具有唯一性. 1)ID=0的进程:调度进程/交换进程.内核的一部分.不执行任何磁盘上的程序. 2)ID=1的进程:init进程. 1-自举结束时,由内核调用,且不会终止. 2-用于读取与系统有关的初始化文件.并引导系统至一个状态. 3-使用root权限运行,是所有孤儿进程的父进程. 3)ID=2的进程:页守护进程.负责支持虚拟存储器系统的分页操作. 2,僵死进程:已经终止,但其父进程尚未对其进行善后处理的进程. 3,进程调度. 1)UNIX系统…
一.目录处理命令 cd:切换目录 pwd:显示当前目录 mkdir:新建一个新的目录 rmdir:删除一个空的目录 1)pwd:显示当前目录 pwd [-P] P:显示出当前的路径,而非使用连接(link)路径 所以-P的作用是文件会不以连接文件的数据显示,而是显示正确的完整路径. 2)midir:(新建目录) mkdir [-mp] -m:配置文件的权限,直接设置,不需要看默认权限(umask)   -p:帮助你直接将所需要的目录(包含上层目录)递归创建起来.举个例子具体看看: 3)rmdir…
0x00 软件包管理器 所有的软件都是由文件格式的程序代码(即源代码),经过编译成为一个可执行二进制文件:对于一个软件来说,其包含二进制程序.库文件.配置文件以及帮助文件.在应用中,每次要安装程序时通过找源代码然后去编译成二进制文件,这个过程要花费大量的时间,所以就有了程序包管理器.程序包管理器的功能是:将编译好的应用程序的各组文件打包成一个或几个程序包文件,从而更方便地实现程序包的安装.升级.卸载和查询等管理操作. 我们可以将这种软件包管理器称为手动安装程序的软件包管理器,为什么成为手动安装程…
Linux灾难恢复: Root密码修复 Centos single Filesystem是硬盘文件根目录,无法再cd ..就像macitosh 硬盘图标 Pwd:显示绝对路径 MBR修复 模拟MBR被破坏和修复 C语言死循环程序 #include int main(void) { Int a; While(1) {printf("please input your number"); Scanf("%d",&a); Printf("your inp…
Linux灾难恢复: Root密码修复 Centos single Filesystem是硬盘文件根目录,无法再cd ..就像macitosh 硬盘图标 Pwd:显示绝对路径 MBR修复 模拟MBR被破坏和修复 C语言死循环程序 #include int main(void) { Int a; While(1) {printf("please input your number"); Scanf("%d",&a); Printf("your inp…
1.查看用户最近登录情况 lastlastlog 2.查看硬盘使用情况 df 3.查看文件大小 du 4.查看内存使用情况 free 5.查看文件系统 /proc 6.查看日志 ls /var/log/ 7.查看系统报错日志 tail /var/log/messages 8.查看进程 top 9.结束进程 kill 1234kill -9 4333…
前言: 对于windows来说,文件的系统管理都是非常简单的(这个应该有一个捂脸),通常就是重命名,复制,移动,删除,查看文件属性,查看文件内容,寻找文件.其实在图形化行中的linux也是有这样子功能,但是几乎没有多少人会去使用图形化的linux(一脸懵B).命令行中的重命名,复制,移动,删除是如何的呢?接下来为大家一一介绍. 绝对路径和相对路径 绝对路径:由根目录(/)开始写起的档名或目录名称,例如/home/dmtsai/.bashrc; 相对路径:.相对于目前路径的档名写法例如./home…
我研二之前算是一个纯粹的计算机小白,因为某些原因开始接触了计算机方面的知识. Linux系统也就是前几个月才听说,因某些需求需要在Linux环境下运行.纯的Linux系统不太现实, 所以在他人帮助和自己的摸索下学会了安装虚拟机VMware.至于用哪个版本的系统, 可以选择ubantu也可以选择centos,用哪个版本就下哪个版本的镜像文件,你也可以两个都安装 第一步:安装前的准备工作(百度下一个VMware虚拟机软件和一个镜像文件)…
---IO重定向: 典型的冯诺依曼计算机由5大部件组成:运算器,控制器,存储器,输入设备和输出设备.而一台计算机上可能有很多输入设备和输出设备,键盘.麦克风是输入设备,显示器.声卡是输出设备,网卡.硬盘.U盘既是输入设备又是输出设备.如此众多的输入输出设备中系统设定了默认输入设备是键盘,又称标准输入,用STDIN表示,文件描述符0:默认输出设备是显示器,又称标准输出,用STDOUT表示,文件描述符为1:默认错误输出也是显示器,用STDERR表示,文件描述符为2.虽然标准输出设备和标准错误输出设备…
一.分析文件权限(ln -s 文件名 快捷方式名 用来创建文件的快捷方式,下方ll查看信息时会在第一个字符处显示l) [hjp@bogon ~]$ ll total 4 drwxrwxr-x. 2 hjp hjp 4096 Jan 6 00:16 t drwxrwxr-x. 2 hjp hjp 6 Jan 5 20:44 testdir [hjp@bogon ~]$ 以drwxrwxr-x. 2 hjp hjp 4096 Jan 6 00:16 t为例1.d:表示目录(文件夹),该处字符还可以是…
1.用户与组账号 用户账号:包括实际人员和逻辑性对象(例如应用程序执行特定工作的账号) 每一个用户账号包含一个唯一的用户 ID 和组 ID 标准用户是系统安装过程中自动创建的用户账号,其中除 root 是管理者外,其余的都是系统账号 组账号:组是逻辑性单元,用来集合特定的用户,以便于其中的所有成员对文件具有相同的访问权限 标准组是系统自动添加的,其中除 root 组用来组织管理者外,其余的供程序执行时使用 2.账号信息 (1)用户账号信息 有关用户账号的信息都记录在 /etc/passwd 文件…
对于每一个 Linux 学习者来说,了解 Linux 文件系统的结构是十分有必要的 因为在 Linux 中一切皆文件,可以说只有深入了解 Linux 的文件系统,才会对 Linux 有更深刻的理解 Linux 文件系统采用 树状结构,由 Filesystem Hierarchy Standard (FHS) 确定文件目录的命名规范以及存放标准 另外,在 Linux 中 没有文件拓展名的概念,但是可以使用 file 文件名称 命令确认文件类型 换句话说,在 Linux 下命名为 test.txt…
了解 Linux 系统基本的文件管理命令可以帮助我们更好的使用 Linux 系统,以下介绍几个常用的文件管理命令 1.pwd pwd 是 Print Working Directory 的简写,用于显示当前工作目录 user@ubuntu:/$ pwd /home/user 2.ls ls 是 List 的简写,用于列出目录内容,常用的参数列举如下: -a:(All)显示所有文件,包括隐藏文件 -l:(Long Format)显示详细信息 -t:(Time)按修改时间排序 -s:(Size)按文…
一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Command Mode:命令模式,打开 vi 编辑器时的默认模式 Insert Mode:编辑模式,用于编辑文本 LastLine Mode:行末模式,用于执行命令 二.Command Mode 无论当前处于任何模式,按 Esc 键即可切换到 Command Mode 模式 1.移动 操作 描述 h / 方向…
1.查看命令 (1)man 可以使用 man 命令名称 命令查看某个命令的详细用法,其显示的内容如下: NAME:命令名称 SYNOPSIS:语法 DESCRIPTION:说明 OPTIONS:选项 man 数据库保存在以下的目录中(可以使用 manpath 命令查看): /usr/local/man /usr/local/share/man /usr/share/man 在每一个保存位置可以发现多个以 manX 命名的子目录(X 代表数字,范围为 1~9,分别对应不同的命令): 1:可执行文件…
内核版本:linux-2.6.11 Linux在加载一个可执行程序的时候做了种种复杂的工作,内存分配是其中非常重要的一环,作为一个linux程序员必然会想要知道这个过程到底是怎么样的,内核源码会告诉你这一切. 线性区 一个可执行程序,是经过编译器处理后的遵守一定规则的数据.符号表和指令序列的组合,当linux加载一个可执行程序的时候,会为其创建一个新的进程,其对应的进程描述符task_struct中会保存许多资源的描述符,其中的mm_struct就是这个进程的内存描述符,用来管理该进程拥有的所有…
原创文章,转载请注明:Linux内核学习笔记-2.进程管理) By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert Love,陈莉君等译. 1.进程 进程是正在执行的程序代码的实时结果,包含打开的文件.挂起的信号等.线程是进程中的活动的对象,内核调度的对象是线程.在Linux内核对线程与进程并不加以区分,线程只不过是一种特殊的进程. 2.进程描述符 内核把进程的信息存放在task list的双向循环链表中,链表中的…
目录 学习笔记:CentOS7学习之十七: Linux计划任务与日志的管理 17.1 计划任务-at-cron-计划任务使用方法 17.1.1 at计划任务的使用 17.1.2 查看和删除at将要执行的计划任务 17.1.3 crontab定时任务的使用 17.1.4 cron命令参数介绍 17.1.5 创建计划任务 17.1.6 系统级别的计划任务 17.1.7 常见的计划任务写法和案例 17.2 日志的种类和记录的方式-自定义ssh服务日志类型和存储位置 17.2.1 常见日志文件的作用 1…
Linux分类笔记(一) 权限管理 普通权限 文件的普通权限 对一个普通的文件使用ls -ll命令后,看到下面的输出内容   而对于文件权限中的每一位,又分别代表了以下的意思 文件类型又有以下几类: [d]:目录 [-]:文件 [l]:连接文件 [b]:可供存储的接口设备 [c]:串行端口设备,如键盘和鼠标 权限的定义: r:可读,普通文件的r代表可以读取该文件的实际内容:目录的r代表可以读取该目录结构列表的权限 w:可写,普通文件的w代表可以编辑,新增或者修改文件内容,但不能删除该文件:目录的…
Linux 源码阅读 进程管理 版本:2.6.24 1.准备知识 1.1 Linux系统中,进程是最小的调度单位: 1.2 PCB数据结构:task_struct (Location:linux-2.6.24\include\linux\sched.h)(任务可以和进程混用) task_struct结构体 2.设计思路图 3.数据结构 4.主要函数 4.1创建进程 long do_fork(unsigned long clone_flags, unsigned long stack_start,…
1. 负荷权重 1.1 负荷权重结构struct load_weight 负荷权重用struct load_weight数据结构来表示, 保存着进程权重值weight.其定义在/include/linux/sched.h, v=4.6, L1195, 如下所示 struct load_weight { unsigned long weight; /* 存储了权重的信息 */ u32 inv_weight; /* 存储了权重值用于重除的结果 weight * inv_weight = 2^32 *…
1. 唤醒抢占 当在try_to_wake_up/wake_up_process和wake_up_new_task中唤醒进程时, 内核使用全局check_preempt_curr看看是否进程可以抢占当前进程可以抢占当前运行的进程. 请注意该过程不涉及核心调度器. 每个调度器类都因应该实现一个check_preempt_curr函数, 在全局check_preempt_curr中会调用进程其所属调度器类check_preempt_curr进行抢占检查, 对于完全公平调度器CFS处理的进程, 则对应…