首页 > 代码库 > 马哥学习笔记三十二——计算机及操作系统原理

马哥学习笔记三十二——计算机及操作系统原理

缓存方式:

  直接映射

  N路关联

缓存策略:

  write through:通写

  write back:回写

进程类别:

  交互式进程(IO密集型)

  批处理进程(CPU密集型)

  实时进程(Real-time)

CPU: 时间片长,优先级低
IO:时间片短,优先级高

Linux优先级:priority  

  实时优先级: 1-99,数字越小,优先级越低  

  静态优先级:100-139,数据越小,优先级越高  

  实时优先级比静态优先级高

  nice值:调整静态优先级   -20,19:100,139   0:120

ps -eo:显示加中括号的进程为内核线程

调度类别:
  实时进程:
    SCHED_FIFO:First In First Out
    SHCED_RR: Round Robin
    SCHED_Other: 用来调度100-139之间的进程

动态优先级:
  dynamic priority = max (100, min (  static priority - bonus + 5, 139))
    bonus: 0-10

手动调整优先级:  

  100-139: nice   

    nice N COMMAND   

    renice -n # PID

    chrt -p [prio] PID  

  1-99:   

    chrt -f -p [prio] PID   

    chrt -r -p [prio] PID

    chrt -f -p [prio] COMMAND

ps -e -o class,rtprio,pri,nice,cmd

CFS(complete Fair Scheduler):完全公平调度

SMP:对称多路处理

NUMA:非一致性内存访问

CPU affinity: CPU姻亲关系

  numastat
  numactl
  numad

taskset: 绑定进程至某CPU上

  mask:0x0000 0001(转换成二进制,1表示一颗CPU,从零开始)

  taskset -p mask pid

  taskset -p -c 0-2,7 101

应该将中断绑定至那些非隔离的CPU上,从而避免那些隔离的CPU处理中断程序:

  echo CPU_MASK > /proc/irq/<irq number>/smp_affinity