2019/01/13进程编程

  1. 理论知识:是具有一定独立的功能程序的一次运行活动,同时也是资源分配的最小的单元。
  2. ps -elf 查看linux里面的进程,ps -elf | grep + 关键字(如test)搜索进程 ;ppid 父进程 ,pid 进程的编号(子编程),CMD进程的名称, UID 进程属于的用户。
  3. Ctrl + z 使进程在后台继续运行, ./+文件名 表示启动进程, fg 把后台的进程切换到前台继续进行运行;如果发生文件交换的话,用ls -a命令找到隐藏的文件删除,在进入要编辑的文件,就不会发生文件交换的情况了。
  4. 在vim的屏幕的命令行中,用shift+zz 也是表示退出。
  5. 进程的生命周期:创建,运行(执行,就绪,等待),撤销。
  6. 死锁问题:多个进程因竞争资源而形成的一种僵局,若无外力作用,将无法进行下去。
  7. system(“clear”)清除屏幕的信息。
  8. exec用被执行的程序替换调用它的程序。 exec用被执行的程序替换调用它的程序。
    区别:
    fork创建一个新的进程,产生一个新的PID。
    exec启动一个新程序,替换原有的进程,因此进程的PID不会改变
    int execl(const char * path,const char * arg1, …) int execl(const char * path,const char * arg1, …)
  9. pid_t wait (int * status)功能:阻塞该进程,直到其某个子进程退出。
  10. fork 和vfork 的区别 fork:子进程拷贝父进程的数据 ,vfork:子进程与父进程共享数据 ;fork:父、子进程的执行次序不确定, vfork:子进程先运行,父进程后运行
发布了5 篇原创文章 · 获赞 0 · 访问量 380

猜你喜欢

转载自blog.csdn.net/weixin_43647723/article/details/86437679