博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
操作系统相关知识
阅读量:5278 次
发布时间:2019-06-14

本文共 4315 字,大约阅读时间需要 14 分钟。

1 监控系统的一些命令

   top:是linux中常用的性能分析工具,用来查看系统中各个资源的占用空间的数据。

      第一行是任务信息,从中到右分别是(当前时间),(系统运行时间,以时:分的格式),(当前登录用户数),(系统负载,三个数值分别是1分钟,5分钟,15分钟前到现在的平均值。

      第二行属于进程,从左到右分别是(进程总数),(正在运行的进程),(睡眠的进程),(停止的进程数),(僵尸进程)。

      第三行是关于CPU的信息,从左到右分别是(用户空间占用CPU百分比),(内核空间占用CPU百分比),(用户进程空间内改变过优先级的进程占用CPU的百分比),(空闲CPU的百分比)(,等待输入输出的CPU时间百分比),(硬件中断占用CPU时间的百分比),(软件中断占用CPU时间的百分比)。

      第四行和第五行属于内存信息。

   free:显示内存的使用状态。

         (total)(Mem)属于物理内存。

         (used)(Mem)使用的物理内存。

         (free)(Mem)可以使用的内存。

          他们之间的关系是(total)(Mem)=(used)(Mem)+(free)(Mem)

         (shared)(Mem)共享内存,表示有几个进程共享的内存。

         (buffers)(Mem)表示已经分配但还未使用的buffers大小。

         (cached)(Mem)表示已经分配但还未使用的cached大小。

          buffers和cached功能是:

          buffers是用于存放要输出到disk(块设备)的数据,而cached是存放从disk上读出的数据。都是为了提高IO的性能,由OS管理。

          操作系统为了提高IO read的性能,总是要多一些cached数据,这就是(cached)(memory)为什么比较大。

         (used)(-buffers/cached):一个应用程序认为系统被用掉多少内存。(used)(-buffers/cached)=(used)(Mem)—(buffers)(Mem)—(cached)(Mem)

         (free)(+buffers/cached):一个应用程序认为系统还有多少内存。(free)(+buffers/cached)=(free)(Mem)+(buffers)(Mem)+(cached)(Mem)

         free命令的数值都是从?proc/meminfo中读取的。 $ free -m是数值的单位为MB,不过数值没有那么详细。可以使用命令($ free -wm)可以得到buffers和cached各自使用的数值。

      pstree:以树状形式显示程序。进程状态的使用方法是(pstree PID)。

      kill:比一个信号发给一个或多个进程,默认为发送终止信号。终止进程的方法是(kill PID)。杀死进程使用方法是(kill -9 PID)。

     pgrep:通过进程和其他属性查找进程。查找进程方法是(pgrep 要查找的进程名称)。

     pkill:通过进程和其他属性发信号给进程。杀死进程是(pkill 要杀死的进程名称)。

     fdisk:创建磁盘分区。

             d(delete):删除一个已存在的分区。

             l(list):列出也存在分区的类型。

            m(menu):列出fdisk中使用的所有命令。

            n(new):添加一个新的分区。

            p(print):列出分区表的内容。

           q(quit):退出fdisk,但是不储存所操纵的变化。

           t(title):改变分区系统的id。

          w(write):退出fdisk,并储存所操纵的变化。

    partprobe:重新初始化内存中内核的分区表。

    mkfs:格式化内存。使用方法是(mkfs.操作过后的对象名 操作对象)。

    e2label:设定或查看一个设备的label名称。查看某个分区的方法是(e2label 操作的对象)。设定命令的方法是(e2label 操作的对象 wg)。

         df:查看硬盘分区信息。

         mount:挂载文件系统。挂载的方法是(mount 挂载的目标 挂载的点)。

         umount:卸载文件系统。卸载方法是(umount 操作的目标)。假如在操作的对象目录里使用方法是(umount -l 操作的对象)强制卸载。

    2、dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。。    

               dd测试硬盘速度:dd if=/dev/zero of=/a.txt bs=200M count=1      
         dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。     
       注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512;c=1;k=1024;w=2    
      参数注释:    
       if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >    
       of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >   
       ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。     
       obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。      
      bs=bytes:同时设置读入/输出的块大小为bytes个字节。   
         count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。
  swapon:启动交换分区,启动的方法是(swapon 加上你要启动的路劲)。后面加上-a:启动全部的交换分区。后面加上那个-s:列出当前使用的所有系统交换分区的状态。

2  进程的信息

    PID:进程id。

    PPID:父进程id。

    RUESR:Real user name。

    UID:进程所有者的用户id。

    USER:进程所有者的信息。

    TTY:启动进程的终端名(不是从终端启动的进程则会显示?)。

    RR:优先级。

    NI:nice值。(负值表示高优先级,正值表示低优先级)。

    P:最后使用的CPU(仅在多CPU环境下有意义)。

    %CPU:上次更新到现在CPU时间占用的百分比。

    TIME:进程使用CPU的时间统计(单位秒)。

    %MEM:进程使用的物理内存百分比。

    VIRT:进程使用的虚拟内存总理(单位KB)。VIRT=SWAP+RES.

    SWAP:进程使用的虚拟内存中被换出的大小(单位KB)。

     RES:进程使用的没有被换出的物理内存大小(单位KB)。RES=CODE+DATA。

     CODE:可执行代码占用的物理内存大小(单位KB)。

     DATA:可执行代码以外部分占用物理内存的大小(单位KB)。

     SHR:共享内存大小(单位KB)。

     nFLT:面页错误的次数。

     nDRT:最后一次写入到现在被修改的次数。

     S:进程状态

                   D=不可中断的睡眠状态。

                   R=运行。

                   S=睡眠。

                   T=跟踪或停止。

                   Z=僵尸进程。

    COMMAND:命令名或命令行。

    WCHAN:若该进程在睡眠,则会显示睡眠中的系统函数名。

    Flags:任务标志,参考sched.h。

3  CPU的利用率与load average

    CPU正常的利用率是<70%的。CPU负载<或=1时,能正常执行。CPU负载>1时,属于超负荷执行。load average应该<或=CPU核数*0.7。CPU负载和CPU利用率过高都是不好的现象。

    为何要有1分钟,5分钟,15分钟三种cpu的负载:是希望我们将他们三个值结合起来看。或者说是展示一个动态图表示的数据。

    进程挂起是自身原因,遇到了I/O的阻塞,便会让出CPU让其他进程去执行,保证CPU一直在运行。

    与进程无关,在操作层面时,有个进程占用CPU过久时,或者需要调用硬盘里的文件时,而会调用其它进程使用CPU。

4  硬盘的相关内容

    在linux系统中,每个设备都会被当一个文件来对待。而他们对应的文件名如下:

                     IDE硬盘:/dev/hd(a-d)

                     SCSI硬盘:/dev/sd(a-p)

                     U盘:/dev/sd(a-p){与SCSI硬盘一样)

                     CDROM:/dev/sr0

    硬盘的结构和分区:硬盘为什么要有分区,更容易管理和控制操作系统,这样系统效率高,更容易备份,可以限制用户使用磁盘份额。

    硬盘主要分为主分区,扩展分区和逻辑分区。一个硬盘上最大可以划分4个主分区,在SCSI磁盘最多可以分15个分区,IDE磁盘可以分63个分区。

     硬盘的逻辑结构:硬盘结构为磁道,块,磁柱和分区。

         块是盘片上访问的最小单位,一个块可以储存一个字节的数据。

         磁道是有一系列的头尾相连块组成的圆圈。

         磁柱是有一叠磁道在相同半径的每个盘面的磁道组成的。

         分区是有一组相邻的磁道组成的。

   挂载点的定义:将一个设备(通常是存储设备)挂载到一个已存在的目录。

    虚拟内存的定义:指一块硬盘空间当作内存来使用,称为交换分区(swap)。linux交换分区的型号是0x82.

   i节点的定义:i节点是一个数据结构,他存放着有关一个普通文件,目录或其他文件系统对象的基本信息。

   符号(软)连接:符号连接的定义是只想另一个文件的一个文件。

                         创建软连接的方法是用ln命令:使用的方法是(ln -s 你要操作的文件 需要存放的目录/建立的符号链接)。例:ln –s wolf/dog.wolf.baby bodydog/dog_ wolf.boy

    硬链接:硬链接(hard link)的定义是一个文件名和一个i节点之间对应关系,也可以认为一个硬链接在所对应的文件名上加一个额外的路径名。

                使用ln命令创建硬链接的方法是:(ln 你要操作的文件 你要操作到哪个目录/你需要建立的路径名)例:ln wolf/wolf.dog backup/wolf.dog2.

掌握Linux系统中常见的文件类型: -:普通文件(regular file),也有人称为正规文件。

                                d:目录(directory)。
                                l:符号(软)链接。
                                b:块特殊文件(b是block的第1个字符),一般指块设备,如硬盘。
                                c:字符特殊文件(c是character的第1个字符),一般指字符设备,如键盘。
怎样检查磁盘空间:用df命令显示文件系统中磁盘使用和空闲区的数量。

           掌握df命令的功能:显示文件系统中磁盘使用和空闲区的数量。

           -a 显示所有磁盘
           -h 单位转换
            掌握du命令的功能: 显示目录和文件的大小a h同上

转载于:https://www.cnblogs.com/fangjie0410/p/6909891.html

你可能感兴趣的文章
oo第一单元作业总结
查看>>
SRS源码——Listener
查看>>
web.xml 4.0 头
查看>>
Java面向对象抽象类案例分析
查看>>
100.Same Tree
查看>>
JAVA 根据经纬度算出附近的正方形的四个角的经纬度
查看>>
Linux系统配置matlab2009b
查看>>
ZH奶酪:基于ionic.io平台的ionic消息推送功能实现
查看>>
对SPI、IIC、IIS、UART、CAN、SDIO、GPIO的解释
查看>>
Thymeleaf模板格式化LocalDatetime时间格式
查看>>
庖丁解“学生信息管理系统”
查看>>
Pyltp使用
查看>>
Java8函数之旅 (七) - 函数式备忘录模式优化递归
查看>>
移植LWIP(ENC28J60)
查看>>
无标题
查看>>
vue+element下拉框样式的点击按钮
查看>>
Vue+element 解决浏览器自动填充记住的账号密码问题
查看>>
c++中减字符0的作用(转)
查看>>
今日嗅评:百度金融挖了一线实操的干将,这比高薪聘请大行长实在多了
查看>>
Linux 基本收集
查看>>