zoukankan      html  css  js  c++  java
  • linux进程学习笔记

    学习了linux下的进程,觉得应该整理一下,忘得差不多了,顺便回顾一下。 
    
    学而时习之,不亦说乎~~ 
    
    进程笔记 
    1,什么是进程?  
    
    
        The Single UNIX Specification, Version 2 (UNIX98) and its predecessor Version 1 (UNIX95),  
    
    defines a process as “an address spacewith one or more threads executing within that address  
    
    space, and the required system resources for those threads.”  
    
    
    
    2,进程ID,PID 
    3,进程描述符,控制块 
    4,进程的堆栈  
    我们知道,Linux执行进程有两种模式:用户模式(User Mode)和内核模式(Kernel Mode),在这两个模式下的进程对应着两个不同的堆栈:用户堆栈(User Mode Stack)和内核堆栈(Kernel Mode Stack 或称为系统堆栈)。当进程由于中断或系统调用而陷入内核模式时,其堆栈也对应地由用户堆栈切换到内核堆栈,反之亦然。 
    
    
    5,进程描述符的存储 
    6,创建新进程 
    7,运行新程序 
    8,进程状态 
    9,进程调度 
    10,进程控制和常用操作 
        退出/终止进程 
        暂停进程 
        进程跟踪 
        等待子进程结束 
    11,进程间通信 
        pipe管道 
        named pipe (FIFO)命名管道  
        signal 信号 
        message queue消息队列 
        shared memory共享内存 
        socket 
        semaphore信号量 
    
    12.进程要点总结 
    
        main的调用 内核(调用exec)->启动例程->获取命令行参数 exit(main(argc,argv)) 
    
      _exit和_Exit,_Exit立即进入内核  exit则是先执行一些清理处理,然后进入内核 
    
      exit(state)state为进程的终止状态 ,若main无返回值则,进程的终止状态是未定义的。 
    
    
      获取环境变量用 getenv和putenv函数 
    
      行缓冲方式(换行)和完全缓冲方式(标准i/0清理操作) 
  • 相关阅读:
    ZOJ Problem Set–2781 Rounders
    ZOJ Problem Set 3418 Binary Number
    ZOJ Problem Set 1090 The Circumference of the Circle
    ZOJ Problem Set 2932 The Seven Percent Solution
    java的反射应用
    C++指针之数据成员指针
    为了实现相同账号不能重复登录功能做的努力
    我对设计模式的理解
    ZOJ Problem Set – 1045 HangOver
    好久不见
  • 原文地址:https://www.cnblogs.com/zendu/p/4990741.html
Copyright © 2011-2022 走看看