linux学习笔记之进程管理

ps    process state

unix    system V
    BSD

ps -e    显示所有进程(tty相关的是前台进程 ?tty无关)
    -u    用户相关
    -f    full    format    listing
    -F    print extra    information
    -o command  选择显示字段

ps aux
ps -ef
ps -eF

bsd风格    
    a
    x
    
    state:
    S    sleep
    s    session loader
    <    high priority
    N    low    priority
    l    multithread
    +    前台进程组中的进程    如与bash相关的前台进程组

    D    uninterruptible    sleeping
    R    runnable    or    running
    T    stop
    Z    zombie
    
    加[]表示内核级线程
    
    ps aux    | wc -l

    pgreb    过滤显示某些进程

    pidof    process
    

进程间通信    IPC
    信号
    共享内存
    proc目录
    
    信号    短小信息,由一个进程发往另一个进程
        man 7 signal        kill -l
    SIGHUP    1    运行时重启配置
    SIGINT    2    终止信号    ctrl+c
    SIGKILL    9    立即结束
    
    kill    -signal    pid    signal    默认15
    killall    -signal    pid    进程树
    kill -HUP     httpd
    重新读取配置文件
    
j进程优先级
    

   

进程:
    Task_struct  c语言实现    链表实现
    进程描述符  元数据
    双向链表
    struct含有庞大的描述符数据结构。
    进程由内核切换  存在用户态与内核态之间的切换。
    内核模式不应占用太多时间  切换过多

    cpu密集型  批处理    时间片长  优先级低
    io交互式        时间片短  优先级高
    实时进程 real-time

    linux优先级  proority
    实时优先级  1-99 数字越小 优先级越低
    静态优先级  100-139  数字越小 优先级越高
    实时优先级高于静态优先级
    
    内核进程常为实时优先级   rt实时优先级
    
    nice 调整静态优先级    Nice -20  ~   19   对应  100-139  默认nice 0 优先级120

    进程队列  两个 活动队列  过期队列
    活动时调换两个队列  活动  过期  调换    o(1)算法

    CFQ complete fair queue
    SCHED_Other  更适用于桌面系统

    cow Copy On Write 写时复制 先与父进程共享资源 子进程要修改则复制

    RT
    SCHED_FIFO
    SCHED_RR

    100-139
    SCHED_Other
    
    SCHED_BATCH
    SCHED_IDLE

    memory controller
    get address
    read/write

    三级缓存是共享的  存在竞争
    
    numa  no union memory access

    内核重新平衡内存访问
    
    
    
    
    



   

    
    
   

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。