1.操作系统是什么?
是配置在计算机硬件的第一层软件,是对硬件系统的首次扩充;
2.操作系统的作用与功能?
作用:控制管理计算机的全部硬件资源,合理组织内部各部件协调工作,为用户提供和操作编写界面的集合;
功能:处理机管理、存储器管理、设备管理和文件管理;
3.操作系统的发展?
点击查看
4.并发
在单位时间内可以处理事情的能力, 8个窗口,30秒打饭,并发能力是每分钟16
5.并行
同一时刻,可以处理事情的能力,8个窗口,8个人打饭,并行能力是8
6.进程
为了是程序并发的执行,并且可以对并发执行的程序加以控制和描述,就引入“进程”的概念。
操作系统多任务:在同一时刻运行多个程序的能力;
一般多任务:一个程序同时执行多个任务;
进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位;是系统中的并发执行的单位;是资源分配的最小单位;
有自己独立的地址空间;
7.线程
是程序执行的最小单位;是共享进程的数据,使用相同的地址空间;
CPU使用的基本单元,由线程ID、程序计数器、寄存器集合和栈组成
线程库:为应用程序员提供了创建和管理线程的API;
8.进程与程序
进程和程序是两个不同的概念,进程具有程序所没有的PCB结构,程序没有建立PCB是不能参与并发执行的,总的来说,主要区别在于进程由PCB块,程序没有;
进程:是系统进行资源分配和调度的一个独立单位。其是动态的(产生->执行->消亡),可单独一个进程运行,也可以多个进程并发运行(参考百米赛跑,每个人就是一个进程),且运行方式是异步的。
程序:程序是一组有序指令的集合,存放在某种介质上,不具有活动的含义,是静态的。
9.并发与并行那个效率高?
并行,一对一处理;
10.多个CPU>=多个线程
采用并行;
11.多个CPU<=多个线程
采用并发
12.运行计算
1MB 1024*1024 =0---1048575
补充:
栈与堆的概念:
栈:是线程独有的,栈在程序开始时候初始化,每一个线程的栈是独立的,栈的空间在高级程序的语言里不需要分配和释放;
堆:是大家共有的空间,分为全局堆和局部堆,全局堆是没有分配的空间,局部堆是用户分配的空间,程序运行时可以向操作系统要额外的堆,运行完成后必须释放,否则就会内存泄漏;
操作系统的基本共性:并发、共享、虚拟和异步;
并发
引入进程;引入线程;时间片轮转程度调用算法;
共享
互斥共性方式:在一段时间内只允许一个进程访问的资源成为临界资源或独占资源。
同事访问方式:允许一段时间内有多个进程同时对它们进行访问。
虚拟
时分复用技术:利用处理机的空闲时间运行其他程序,提高处理机的利用率。
空分复用技术:利用储存器的空闲时间存放其他程序,提高内存的利用率。
异步
进程已不可预知的速度向前推进。