博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
操作系统基本原理概述
阅读量:4042 次
发布时间:2019-05-24

本文共 1564 字,大约阅读时间需要 5 分钟。

总述:基础,权当再次温习

 

1.操作系统概述

答:操作系统是控制和管理计算机软硬件资源,尽可能合理、有效组织多个用户共享多种资源的程序集合。它具有并发性、共享性、虚拟性、不确定性等。一般的的操作系统都具有处理机管理、存储器管理、设备管理、文件管理、用户接口等五种主要功能。

操作系统一般可分为单用户操作系统、批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、并行操作系统、嵌入式操作系统等。

从操作系统的结构来看,主要有整体结构、层次结构、客户/服务器结构、面向对象结构等。

 

2.进程管理

答: 进程是一个具有独立功能的程序关于数据集合的一次可以并发执行的运行活动,是系统进行资源分配和调度的基本单位。一个进程是通过其物理实体被感知的,进程的物理实体又称为进程的静态描述,通常由程序、数据集合、进程控制块(PCB)三部分组成。程序描述功能,数据集合描述程序运行所需要的数据部分和工作区,PCB包含了进程的描述信息、控制信息、资源信息,是进程动态性的集中反映。

进程具有三种基本状态,分别是运行、就绪、阻塞。进程的五状态模型中,状态分别是:活动就绪、运行、活跃阻塞、静止就绪、静止阻塞。信号量和PV操作是了解整个操作系统的底层同步异步机制的重要基础,因已经掌握,在此略过。

死锁是若干进程占有一部分资源并竞争不到其他线程已经占有的资源导致两个以上的线程无限等待资源的情况。产生死锁的四个必要条件是:互斥条件、不可剥夺条件、请求与保持条件、环路条件。针对死锁的四个必要条件,常用的预防、避免、检测、解除死锁的方法都是在这四个条件上想办法做处理。

线程是进程的活动成分,是处理器分配资源的最小单位,可以共享进程的资源与地址空间。线程的实现方式有三种,分别是内核线程、用户线程、轻权进程。在实际使用的操作系统中,每一个应用都会启动一个进程,每个进程中有多个线程负责处理这个应用的各种操作处理。多线程的实现机制在不同的操作系统下是不一样的,主要有多对一模型、一对一模型、多对多模型。

 

3.内存管理

答:内存管理的功能主要包括:内存空间的分配与催收;配合硬件进行地址转换,把用户的逻辑地址转化为物理地址;内存空间的共享和保护;借助外存解决内存容量不足。

地址变换主要在源程序在内存中解释和执行过程中进行的,主要是将程序中的逻辑地址转化为内存中的物理地址,因为处理器只能识别物理地址。一般情况下,逻辑地址装入内存后的物理地址可以通过起始物理地址+逻辑地址来得出。信息在内存中的存储主要有以分区的形式进行管理,可分为固定分区、可变分区、可重定位分区、多重分区。存储器的保护是内存分区的物理基础,常用的存储器保护方式有界限地址保护和设置存储键保护。分区存储管理主要有页式存储管理、段式存储管理、段页式存储管理。虚拟存储管理是借助外存缓解内存容量不足的问题,其利用局部性原理,将应用所需要的数据先引入到内存中,然后在根据应用的实际运行情况利用算法尽可能将需要的数据在实际运行前调入内存,算法调入的数据越准确越好。

 

4.文件管理

答:文件是操作系统信息管理的基本单位,文件系统是实现软件资源管理的基础。文件的组织结构是指文件的构造方式,通常可以从两个角度考察,用户角度看到的文件称为文件的逻辑组织,系统角度看到的文件称为文件的物理组织。文件的逻辑结构有两种形式,分别是无结构的流式文件和有结构的记录式文件。文件的物理结构有顺序结构、索引结构、链式结构。

文件控制块的集合称为文件目录,文件目录也被组织成文件,常称为目录文件。操作系统的文件系统多采用多级树形目录结构。常用的磁盘空闲区管理方法有空闲文件目录、空闲块链、位示图、成组链接法。

分布式文件系统具有网络透明性和位置透明性的特点,具有很好的共享性,多采用客户、服务器架构。

转载地址:http://nqpdi.baihongyu.com/

你可能感兴趣的文章
SSH框架总结(框架分析+环境搭建+实例源码下载)
查看>>
js弹窗插件
查看>>
自定义 select 下拉框 多选插件
查看>>
js判断数组内是否有重复值
查看>>
js获取url链接携带的参数值
查看>>
gdb 调试core dump
查看>>
gdb debug tips
查看>>
arm linux 生成火焰图
查看>>
linux和windows内存布局验证
查看>>
linux config
查看>>
linux insmod error -1 required key invalid
查看>>
linux kconfig配置
查看>>
linux不同模块completion通信
查看>>
linux printf获得时间戳
查看>>
C语言位扩展
查看>>
linux dump_backtrace
查看>>
linux irqdebug
查看>>
git 常用命令
查看>>
linux位操作API
查看>>
uboot.lds文件分析
查看>>