进程与线程

  • 描述:进程与线程
 
线程:
  就是操作系统能够运算的最小单位。  
  线程就是一串指令的集合,它被包含在进程之中,是进程中的实际运作单位,一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。
 
进程:
  每一个程序的内存是独立的,每一个程序都要以一个整体的形式暴露给操作系统管理,里面包含对各种资源的调用内存的管理,网络接口的调用等对各种资源的集合,就可以成为进程。
  进程可以设置线程优先级,设置PID,当一个进程启动时会自动开启第一个线程为主线程,主线程会创建子线程子线程,在继续创建子线程,子线程是独立的,与主线程并没有迭代关系。
 
  • 注:所有在同一个进程里的线程是共享同一块内存空间的。
  • 注:进程 要操作CPU,必须要先创建一个线程进程本身不会执行,如果进程需要执行,至少需要调用一个线程。
  • 注:单核CPU只能干一件事,只能打开一个程序,事实不是这样,单核CPU也可以执行多个程序,是因为CPU执行速度太快,让我们感觉他在,做多件事,事实上每个线程都在通过优先级排列让CPU单独进行处理。说明了,多个线程可以共享一个CPU的。
 
 实际就是两个线程的比对。
 答:没有可比性。
线程与进程那个快?
进程需要向内存申请空间。
线程就只有启动指令。
答:启动线程块。
启动一个进程块还是进程快?
答:线程
    1.线程共享内存空间。
    2.线程与线程可以交互。
    3.新的线程容易创建。
    4.一个线程可以控制操作, 同一进程里的其他线程。
    5.对于主线程的修改,可能影响到其他线程的行为。
    注:多线程共享数据,进程数据修改时线程读取的数据也跟着修改。

答:进程
    1.进程的内存是独立的。
    2.进程与子进程数据不共享,是独立的。
    3.新的进程需要对其父进程克隆一次。
    4.进程只能操作子进程。
    5.对一个父进程的修改,不会影响到子进程
注:进程创建子进程,相当于克隆一份进程。
注:两个进程之间,数据不是共享,不可互相访问,如果需要访问,必须通过,一个中间代理来实现。     
进程与线程区别?
Disk < RAM < CPU

Disk < 每秒/读:100MB

RAM:每秒/读 : 12GB

CPU:秒/时钟频率:中断多少次
        
CPU:2.7GHz/每秒:计算2.7亿次
      
CPU:核/同时执行几个任务    
系统硬件/处理速度

 

 
posted @ 2018-01-01 20:13  kevin.Xiang  阅读(221)  评论(0编辑  收藏  举报