欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

linux

dirty_ratio与dirty_background_ratio的区别 有大用

普通分类: 

马哥 50_01 _虚拟化技术基础原理详解 有大用 时间太长以 2:00:00一半为节点 已看完2:00:00 复习到 2:00:00 第二节点第二次看到2:24:40


Disk IO:

磁盘IO的调度器(IO Scheduler)常用的是哪4种

        CFQ: Complete Fair Queue 完全公平队列  

        deadline: 最后期限调度

        anticipatory: 期望调度器(它期望我们在读一个数据之后,还会读这个数据之后的其它数据,会等待几毫秒,所以它的性能表现在很多场景下都不太适用,因为这种等待很可能是白费的,尤其是在随机读写非常多的场景当中,,,它最适合的是在顺序读写比较多的场景当中??????)     

        NOOP: no opreation 没有操作方法调度器


想换一个Disk IO Scheduler,在 /sys/block/<device>/queue/scheduler 下面换?默认是CFQ

CFQ和deadline有一些补充性的参数,可以参考红帽官方的文档,了解一下可以调整的大小


Memory:MMU: 是Memory Management Unit的缩写,中文名是内存管理单元,是个硬件芯片

普通分类: 

对于/etc/fstab的解释及修改文件系统的label 有大用

普通分类: 

/etc/fstab功能详解 有大用

最近去客户现场时,遇到 了一个关于挂载文件/etc/fstab文件的问题,就写了一下/etc/fstab文件的作用一个文件中各个参数的含义。供大家参考有不正确的地方敬请指正。

普通分类: 

linux中文件系统的挂载,及各种类型的实现试验 有大用

挂载介绍:

系统的中的文件系统需要挂载才可进行读取访问。挂载就是将文件系统与当前系统根下的某一个目录产生映射关系,访问该目录时实际访问的是挂载在该目录上的文件系统。
注意:在目录下有文件时,将文件系统挂载在该目录上时,将无法访问该原本该目录下的文件,只能显示挂载在该目录上的文件系统中的文件。也就是说不会产生共存效果。

普通分类: 

堆和栈的区别有哪些? 有大用

堆与栈的区别有:

1、栈由系统自动分配,而堆是人为申请开辟;

2、栈获得的空间较小,而堆获得的空间较大;

普通分类: 

伙伴系统和slab内存分配机制详解 有大用

当在用户模式下运行进程请求额外内存时,从内核维护的空闲页帧列表上分配页面。这个列表通常使用页面置换算法来填充,如前所述,它很可能包含散布在物理内存中的空闲页面。也要记住,如果用户进程请求单个字节内存,那么就会导致内部碎片,因为进程会得到整个帧。

普通分类: 

马哥 49_02 _Linux内存子系统及常用调优参数 有大用

/node-admin/16258   如下图

只要硬件性能足够,任何关于cpu,内存等的性能的参数都不用调

硬件调优,就是选择硬件

如果是cache服务器,选什么样的硬件

如果是mysql服务器,选什么样的硬件

硬件本身在业务过程是I/O密集,还是cpu密集,对内存资源需要多少等等,针对这些有针对性的分析,有了这些直观认识,你才能知道我们当前这样一个服务,它应该运行在什么硬件上可能才更合适一点

,,,,,,,,,,,假如硬件条件已经设定了,跑在我们的硬件上的是操作系统,操作系统最核心的是内核,内核是整个硬件管理的最根本所在,所以如何能够有效的使用这些硬件,就是我们内核的功能,此前讲过,如何调整内存大小,如何调整进程的优先级,,,,,无非就是让我们的内核在使用计算资源上能够得到更有效的配置,,,,,,,以前讲的内存调优参数,无非就是加速我们内核在使用计算资源方面的能力,,,,,,,

普通分类: 

理解 Linux 中的 inodes 有大用

普通分类: 

hugepage设置相关总结 有大用

HugePages_Total:      16     //预留HugePages的总个数
HugePages_Free:       16     //池中尚未分配的 HugePages 数量,真正空闲的页数等于HugePages_Free - HugePages_Rsvd
HugePages_Rsvd:        0     //表示池中已经被应用程序分配但尚未使用的 HugePages 数量
HugePages_Surp:        0     //这个值得意思是当开始配置了20个大页,现在修改配置为16,那么这个参数就会显示为4,一般不修改配置,这个值都是0
Hugepagesize:    1048576 kB //每个大页的大小

 

普通分类: 

马哥 49_01 _Linux内存子系统及常用调优参数 有大用

PA: process address 进程的虚拟地址,叫线性内存地址

HA: host address 虚拟机的内存地址

MA: machine  address 物理机的内存地址

虚拟化环境:

        PA-->HA-->MA

普通分类: 

如何 自己 根据 简称 缩写 简写 略写 查全称全名 有大用 有大大用 有大大大用


1)百或谷 "irq全称"   加"全称"

2)百或谷 "mpstat命令详解"   加"命令详解"

3)百或谷 "mpstat详解" 加"详解"   

4)百或谷 "mpstat abbreviation" 加" abbreviation"   

普通分类: 

如何 根据缩写查全称全名 有大用

1)百或谷 "irq全称"   加"全称"

2)百或谷 "mpstat命令详解"   加"命令详解"

3)百或谷 "mpstat详解" 加"详解"

普通分类: 

如何 根据缩写查全称全名 有大用

1)百或谷 "irq全称"   加"全称"

2)百或谷 "mpstat命令详解"   加"命令详解"

3)百或谷 "mpstat详解" 加"详解"

普通分类: 

CPU Family, Model, Stepping 以及CPU ID, DisplayFamily_DisplayModel 有大用

 /proc/cpuinfo文件的内容包括有:
  

普通分类: 

sysfs not mounted or system not NUMA aware: No such file or directory 有大用

[root@localhost ~]# numastat

sysfs not mounted or system not NUMA aware: No such file or directory


 难道是因为 32位系统无法运行 NUMA 


普通分类: 

CPU多核缓存 有大用

cpu内存架构

普通分类: 

马哥 48_03 _CPU负载观察及调优方法 有大用

内核的调度类别

    三个调度器分别用来调度不同优先级的进程,不同类的进程

        实时进程:调度器有两个

                SCHED_FIFO:  scheduler  first in first out,调度先进先出,先运行完了,其它进程才能运行,调度方法很粗糙

                SCHED_RR:  scheduler  Round Bobin 调度是轮调的,每个进程有时间片,就算是实时的?????,优先级一样,时间片运行完了,就换同级别的下一个,

      SCHED_OTHER:  (linux中)scheduler  other 调度其它的,调度用户空间(100-139之间的)进程的,,,, 在unix (SCHED_NORMAL),,,, 未必调度的都是用户空间的线程,用来调度100-139之间的优先级的进程,,按优先级进行调度


SCHED_BATCH    #红帽6上     #调整批处理进程类别????

SCHED_IDLE   #红帽6上  #调整空闲进程类别????


如下图

普通分类: 

Linux nice命令简要介绍 有大用

进程调度是linux中非常重要的概念。linux内核有一套高效复杂的调度机制,能使效率极大化,但有时为了实现特定的要求,需要一定的人工干预。比如,你希望操作系统能分配更多的CPU资源给浏览器进程,让浏览速度更快、更流畅,操作体验更好。

普通分类: 

dstat默认输出说明 有大用

usr:用户空间的程序所占百分比;

普通分类: 

Hardware / Firmware / Software 的区别 有大用

Hardware: 硬件
Firmware: 固化到硬件中的程序
普通分类: 

Linux 进程讲解 三 进程状态 有大用

  之前在介绍PCB的时候给大家说过PCB中有一项是保存我们进程的状态,我们可以看一下Linux内核里边的源码里边的定义

普通分类: 

linux 进程状态浅析 可执行 不可中断的睡眠 暂停 僵尸进程 退出 进程状态变迁 进程的初始 有大用


                                         

    众所周知,现在的分时操作系统能够在一个 CPU 上运行多个程序,让这些程序表面上看起来是在同时运行的

     在 linux 系统中,每个被运行的程序实例对应一个或多个进程

    linux 内核需要对这些进程进行管理,以使它们在系统中“同时”运行

    linux 内核对进程的这种管理分两个方面:进程状态管理,和进程调度

    进程状态

         在 linux 下,通过 ps 命令我们能够查看到系统中存在的进程,以及它们的状态:

普通分类: 

Linux 的进程状态和转换(Running,Ready,Sleep,Stop) 有大用

进程管理负责控制进程对 CPU 的访问,如任务的创建调度终止等。任务调度是进程管理最核心的工作,由 Linux内核调度器来完成。Linux 内核调度器根据特定算法来选择最值得运行的进程。

一个进程的可能状态有如下几种:

普通分类: 

指令计数器用于存放? 有大用

有的人说是用于存放下一条要执行的指令地址

普通分类: 

寄存器和此CPU缓存有何区别?寄存器有多大容量? 有大用

寄存器属于CPU的一个组成部分而缓存只是集成到CPU封装内完全是和CPU独立的器件。另外二者速度相差很大,寄存器存取速度最快 其次缓存最后是内存。三张容量上的关系就像饭碗、饭锅和米缸的关系,容量越大级别越低,速度越慢与CPU的联系越不密切。寄存器分通用寄存器 标志寄存器 堆栈寄存器等完成CPU的加法运算,缓存是缓冲存储器,属于静态电路存储器。  对于寄存器的容量:  16位寄存器组   16位CPU所含有的寄存器有   4个数据寄存器(AX、BX、CX和DX)  2个变址和指针寄存器(SI和DI) 2个指针寄存器(SP和BP)  4个段寄存器(ES、CS、SS和DS)  1个指令指针寄存器(IP) 1个标志寄存器(Flags)   32位寄存器组   32位CPU除了包含了先前CPU的所有寄存器,并把通用寄存器、指令指针和标志寄存器从16位扩充成32位之外,还增加了2个16位的段寄存器:FS和GS。

普通分类: 

马哥 48_02 _Linux操作系统原理 有大用


如下图 

Application就是进程的运行位置

image.png



如下图,

进程是通过双向链表?????来管理的,List(链表),这个链表是有次序的,通过一个可以找到下一个,进程之间?????在内核内部靠一个独立的数据结构Task_Structure 来管理的,这是C语言来描述的一种独立数据组织的数据结构,这个文件整体结合起来也被称为进程描述符

image.png


每一个进程都有进程描述符 (process descriptor),存的是进程的元数据,类似于文件的元数据

普通分类: 

马哥 48_01 _计算机及操作系统原理 有大用

OS:操作系统本身就是一个虚拟机

cpu:三大核心部件:运算器,控制器,寄存器

运算器: 算术运算,逻辑运算,等

控制器: 控制指令数据的存取过程

寄存器 registers:数据只能在本地运算,要给数据一个暂存位置,中间数据也得暂存一下,,,暂存很短时间,这个空间被不断的刷新,,,并非核心存储部件,,,要具备锁存??????数据的能力,它的构造结构要比外部的RAM(内存)要复杂得多,RAM没有锁存的能力



内存RAM:通常8位(一个字节)一个单元,叫做cell



如下图,

普通分类: 

​Linux - CentOS 7 通过Yum源安装 Nginx 有大用

linux下检查是否安装过某软件包 有大用

1、rpm包安装的,可以用 rpm -qa 看到,如果要查找某软件包是否安装,用 rpm -qa | grep "软件或者包的名字"

普通分类: 

页面

Subscribe to RSS - linux