操作系统——常见面试题

在面试计算机相关岗位时,会问到一些操作系统相关的知识点,这里是根据以往的亲身经历写的一些内容,不过暂时没有把内容写完整,后期会陆续添加到里面来。
1、操作系统的四个特性

  • 并发:同一段时间内多个程序执行(注意区别并行和并发,并行是同一时刻的多个事件,并发是同一时间段内的多个事件)
  • 共享:系统中的资源可以被内存中多个并发执行的进线程共同使用
  • 虚拟:通过时分复用(如分时系统)以及空分复用(如虚拟内存)技术实现把一个物理实体虚拟为多个
  • 异步:系统中的进程是以走走停停的方式执行的,且以一种不可预知的速度推进

2、进程和线程以及它们的区别

  • 进程是对运行时程序的封装,是系统进行资源调度和分配的基本单位,实现了操作系统的并发(如:用户运行自己的程序,系统就创建一个进程,并为它分配资源,包括各种表格、内存空间、磁盘空间、I/O设备等,然后该进程被放入到进程的就绪队列,进程调度程序选中它,为它分配CPU及其他相关资源,该进程就被运行起来);

  • 线程是进程的子任务,是CPU调度和分派的基本单位,用于保证程序的实时性,实现进程内部的并发;

  • 引入线程主要有以下4个方面的优点:

    • 易于调度。
    • 提高并发性。通过线程可以方便有效地实现并发。
    • 开销小。创建线程比创建进程要快,所需要的开销也更小。
    • 有利于发挥多处理器的功能。通过创建多线程,每个线程都在一个处理器上运行,从而实现应用程序的并行,使每个处理器都得到充分的运行。
  • 尽管线程和进程很相似,但两者也存在着很大的不同,区别如下:

    • 一个程序至少有一个进程,一个进程至少有一个线程,线程依赖于进程而存在;
    • 进程在执行过程中拥有独立的内存单元,而多个线程共享进程的内存空间。属于一个进程的所有线程共享该进程的所有资源,包括打开的文件,创建的Socket等。不同的进程互相独立。
    • 线程又被称为轻量级进程。进程有进程控制块,线程有线程控制块。但线程控制块比进程控制块小得多。线程间切换代价小,进程间切换代价大。
    • 进程是程序的一次执行,线程可以理解为程序中一段程序片段的执行。

3、进程间的通信的几种方式

  • 管道及命名管道、信号、消息队列、共享内存、信号量、套接字。

4、线程同步的方式

  • 临界区、互斥量、信号量、事件(信号)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值