1.进程有就绪、执行、阻塞三种状态。
2.进程与线程的关系:①一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。②资源分配给进程,同一进程中的所有线程共享该进程的所有资源。共享代码段、数据段、扩展段,但每个线程拥有自己的栈段(运行时段),用来存储所有局部变量和临时变量。③在处理机上运行的是线程。④线程在执行过程中,需要协作同步,不同进程的线程需要通过消息通信来实现同步。
进程与线程的区别:①进程拥有独立的地址空间,线程没有。②进程是资源分配的最小单位,线程是CPU调度的最小单位。③进程和线程之间通信方式不同,同一进程下的线程共享数据比如全局变量、静态变量。进程间的通信只能通过进程通信的方式进行。④进程上下文切换开销大,线程小。⑤一个进程挂掉了不会影响其他进程,但一个线程挂掉了会影响其他线程。⑥对进程操作开销大,线程小。
3.产生死锁的条件:①互斥条件:资源只能被一个进程使用,不能被共享。②请求与保持条件:已经得到资源的进程可以再次申请新的资源。③非抢占条件:已经分配的资源不能从相应的进程中被强制的剥夺。④循环等待条件:系统中若干进程组成环路,每个进程都在等待相邻进程正占用的资源。
解决死锁:①忽略问题。②检测死锁并恢复。③仔细对系统资源进行动态分配,使系统始终处于安全状态避免死锁。④破除死锁产生的四个必要条件之一。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐