操作系统
来源:互联网 发布:盛科网络 营收 编辑:程序博客网 时间:2024/06/05 03:11
操作系统
操作系统必须完成的两个目标
与硬件部分交互 为包含在硬件平台上的所有底层可编程部件提供服务
为运行在计算机系统上的应用程序(所谓的用户程序)提供执行环境
类unix操作系统把与计算机物理组织相关的所有底层细节都对用户运行的程序隐藏起来,当程序想使用硬件资源时,必须向操作系统发出请求,内核对这个请求进行评估,如果允许使用这个资源,内核代表的应用程序与相关的硬件部分进行交互。为了实现这种机制,现代操作系统依靠特殊的硬件特性来禁止用户程序直接与底层硬件部分进行交互,或者禁止访问任意的物理地址,硬件为cpu引入至少2种不同的执行模式,称为用户的非特权模式和内核的特权模式。unix将其称为用户态(user Mode)和内核态(kernel Mode)。
多用户系统 multiuser system
一台能并发和独立的执行分别属于两个或多个用户若干应用程序的计算机
多用户操作系统必须具备的特点
核实用户身份的认证机制
防止有错误的用户程序妨碍其他应用程序在系统中运行的保护机制
防止有恶意的用户程序干涉或者窥视其他用户活动的保护机制
限制分配给每个用户的资源数的记账机制
unix是实施系统资源硬件保护的多用户系统
所有用户由唯一的数字来标识,这个数字称为用户标识符User ID。组由唯一的用户组标识符标识 user group ID
任何类Unix操作系统都有一个特殊的用户,叫做root,系统管理员必须以root身份登陆,root用户能访问系统的每一个文件,干涉每一个正在执行的用户程序的活动。
进程 process
操作系统使用的基本的抽象 程序执行时的一个实例 一个运行程序的执行上下文
一个进程在地址空间(address space)中执行一个单独的指令序列。地址空间是允许进程引用内存地址的集合。调度程序(schduler)决定哪个进程能执行。
Unix是具有抢占式进程的多处理操作系统。
类Unix操作系统采用进程/内核模式,只有进程发出系统调用(向内核提出请求),硬件才会吧特权模式由用户态变成内核态,进程以非常有限的目的开始一个内核过程的执行
操作系统在进程的执行上下文中起作用,以满足进程的请求,请求结束后,内核将迫使硬件返回用户态,然后进程开始执行下一条指令。
内核体系结构
微内核(microkernel)只需要内核的一个很小的集合,通常包括几个同步机制,一个简单的调度程序和进程间通信机制。
运行在微内核之上的几个系统进程实现从前操作系统实现的功能,如内存分配程序,设备驱动程序,系统调用处理程序等等。
linux内核提供了 模块(module),模块是由一个目标文件,其代码可以在运行时链接到内核或者从内核解除链接,这种目标代码通常由一组函数组成,用来实现文件系统,驱动程序或其他内核上层功能。
使用模块的主要有点
模块化方法 使得开发新模块变得很容易
平台无关性 模块不依赖于某个固定的硬件平台
节省内存使用 无性能损失
- 操作系统~
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 操作系统
- 最小堆第k小的元素与给定x的大小关系(编程题)
- java实现快速排序(利用随机索引)
- NOYJ-拦截导弹
- 你不知道的Java学习笔记20-- 多线程编程
- 1002
- 操作系统
- C 菜单浏览
- Android开发中的Tips
- 杭电 2070 Fibbonacci Number
- 关于数学。
- 关于矩阵表示(matrix-based expression)
- Tcc学习笔记(一) 开篇
- Angular学习心得之directive——require选项的细节
- Linux信号总结