0%

进程间通常需要相互通信,那么进程间是如何进行信息传递的呢?怎么确保多个进程在关键活动中不会出现交叉?怎样保证进行活动是按照想要的顺序执行的呢?

相关概念:

  • 竞争条件:两个或多个进程读写某些共享数据,而最后的结果取决于进程运行的精确时序。
  • 临界区:对共享内存(数据)进行访问的程序片段。
  • 优先级翻转:针对不同优先级的进程访问同意临界区,由于调度规则限定只要高优先级处于就绪状态就可以运行,若某一时间低优先级进程先行进入临界区,且尚未离开,此时高优先级处于就绪状态,由于低优先级不会再次被调度,高优先级进程将一直处于等待状态。
Read more »

1 简介

既然已经有了进程,为什么还要引入线程呢?或者说使用线程有何优点?

  • 线程拥有共享一个地址空间和所有可用数据的能力;
  • 线程比进程更轻量级,所以它们比进程更容易、更快创建及撤销;
  • 线程对于存在着大量的计算和大量的I/O处理的活动,能重叠执行,加快应用程序执行速度,提升性能。(注:多线程对于CPU密集型活动,并不能获得性能上的提升
Read more »

1 简介

进程是对正在运行程序的一种抽象,或者说是实例,它包括程序计数器、寄存器和变量的当前值。

关于进程的一个重要思想:一个进程是某种类型的一个活动,它有程序、输入、输出以及状态。单个处理器可以被若干个进程共享,它使用某种调度算法决定何时停止一个进程的工作,并转而为另一个进程提供服务。

Read more »

1 概述

适配器其实很好理解,生活中也其实充满了适配器,比如:壁式插座是三角孔,而标准的交流电插头是两头的,若需要将两头插头插入三角孔内,则可能需要一个交流电适配器.

Read more »

1 概述

我们知道OOP的"继承"功能非常强大,利用继承设计子类的行为,是在编译时静态决定的,而且所有的子类都会继承到相同的行为,达到复用的目的.但实际上使用继承的方式却不总是最有弹性的,可能造成的问题有:类数量爆炸,设计死板,基类加入新功能并不适用与所有的子类.

Read more »

1 什么是ORM?

ORM(Object Relation Mapping,对象关系映射)是一种程序设计技术,通过面向对象编程语言的语法,完成关系型数据库的操作.

Read more »

1 概述

当我们使用遥控器时,每个按钮对应了不同的功能,对于使用者来说,只需要知道某个按键的功能,并不需要这些功能涉及了哪些硬件设备,具体怎样实现执行相应的功能.

Read more »