OS-102

  • ch3操作系统体系结构

操作系统包含的模块、模块关系;设计角度提供什么的服务给用户;编程角度考虑os接口;普通用户的基本应用……

  • 1component  外存管理,io系统管理,文件管理--3个有关联。
  • 2process management  process是动态,running状态下的program。根本区别:将装到内存里,需要资源--由os决定装在哪以什么方式装入内存--内存管理里讲。多个进程时的问题:cpu到底执行哪一,执行多长时间,怎么执行。进程和io打交道,和文件,都会需要解决问题。

作业:单道多道里概念,完成一个大的任务大的程序。任务:非规范概念,可能指进程可能指线程。是:执行实体。

进程和线程概念比较规范。

进程管理相关内容:os负责进程创建(用户双击--命令发出,os要创建跟踪管理,用户把需求给出,os有各自方法来创建),结束进程,切换(挂起,唤醒),进程间通信机制(进程间是协作),“死锁”,出错处理……

1控制2同步3通信4调度

  • 3内存管理:资源稀缺--有使用也有释放,使用共享,地址划分单元。os负责内存分配,有相应记录--那些使用那些没使用,如何使用。管理也需要资源。在动态情况下必须对内存有精确记录机制。

单任务无此问题。并发执行共享内存,复杂度提高。

1分配2保护(系统和用户空间)3地址映射(物理地址:内存装载存储空间,逻辑:动态时??)4内存扩展(虚拟存储技术)

  • 4外存管理:用户决定,os以文件系统方式管理外存。12位置分配3磁盘调度(速度快点)
  • 5io管理:速度,方式,特点类很多。HAL 硬件抽象层。123

直接io命令或者把映射到内存,?两种思路。端口com口(地址是写死的,设置好的),设备管理器里。

提高处理机和io设备利用率--提高程度不大了。  1缓冲管理(串行并行通信?)2345

  • 6文件管理:逻辑 文件名 文件属性 文件id  创建删除移动等操作
  • 7保护:

os必要支持network。图形界面消耗资源,指令效率更高。

  • 8基本服务和增加服务(分配资源,记录,保护)

支持高级语言的系统调用,比如copy文件

systemcall(os提供,非我们编程人员可控):传参到寄存器(最快的方式,);store 到内存的一个表格table,表格地址放在寄存器;push到栈,并由os pop off。

  • 9systemcall里的communication:两种方式:消息传递(轻量级的消息,通过内核来ab间传递)和内存共享(进程ab有关联,一部分内存可能两者都可读写或一读一写)。
  • 10apps:自带的浏览器,画板等等
  • 11以上各种不同模块怎么组织?理想方式是计算机网络的层次模型(好在模块独立,不会相互牵扯关联),但未实现。 微内核:vxworks,硬实时非常著名。导弹,航天飞机等不同设备的二次开发。
  • 12虚拟机
时间: 2024-10-15 00:37:26

OS-102的相关文章

linux下中文输入法的安装

今天,在LinuxSLC5.3上安装了中文输入法,过程如下:原文出自[比特网],转载请保留原文链接:http://soft.chinabyte.com/os/102/11459102.shtml 1.安装中文字体库 yum install "font-chinese" 2.安装scim输入法 yum install "scim*" 3.安装scim-lang-chinese,scim-pinyin yum install scim-lang-chinese scim

ubuntu更改启动顺序

在ubuntu中修改启动配置. 启动相关grub2主要包含下面三个文件:1.   /boot/grub/grub.cfg 文件    2.   /etc/grub.d/ 文件夹   3.   /etc/default/grub 文件,可以通过修改这三个文件来修改启动项 链接:http://blog.csdn.net/zhu_liangwei/article/details/7847034 一 更改启动顺序,验证过的两种方式 1.修改 /etc/default/grub 文件 打开文件 sudo

C++primer 13.6.1节练习

练习13.45 右值引用:使用&&,他是必须绑定到右值的引用,右值短暂,要么是字面常量,要么是表达式求职过程中的创建的临时对象:不能将一个右值引用绑定到一个右值引用类型的变量上: 练习13.46 1 #include <iostream> 2 #include <string> 3 #include <utility> 4 #include <memory> 5 #include <algorithm> 6 #include &l

http://mirror.centos.org/centos/7.2.1511/os/x86_64/Packages/, 开源软件清单list

http://mirror.centos.org/centos/7.2.1511/os/x86_64/Packages/ http://vault.centos.org/7.2.1511/os/Source/SPackages/ Name Last modified Size Description Parent Directory   -   389-ds-base-1.3.4.0-19.el7.x86_64.rpm 2015-11-25 14:10 1.7M   389-ds-base-de

MIT OS lab Makefile 分析

lab1 中的Makefile主要是根目录下的GNUMakefile, kern/Makefrag, boot/Makefrag, 后两者通过include直接包含到GNUMakefile中. 1 # 2 # This makefile system follows the structuring conventions 3 # recommended by Peter Miller in his excellent paper: 4 # 5 # Recursive Make Considere

Oracle 12cR1 RAC 在VMware Workstation上安装(上)—OS环境配置

Oracle 12cR1 RAC 在VMware Workstation上安装(上)-OS环境配置 1.1  整体规划部分 1.1.1  所需软件介绍 Oracle RAC不支持异构平台.在同一个集群中,可以支持具有速度和规模不同的机器,但所有节点必须运行在相同的操作系统.Oracle RAC不支持具有不同的芯片架构的机器. 序号 类型 内容 1 数据库 p17694377_121020_Linux-x86-64_1of8.zip p17694377_121020_Linux-x86-64_2o

ftp://fr2.rpmfind.net/linux/centos/7.2.1511/os/x86_64, 开源软件清单list

ftp://fr2.rpmfind.net/linux/centos/7.2.1511/os/x86_64 Index of /linux/centos/7.2.1511/os/x86_64/Packages/ Name Size [parent directory]   389-ds-base-1.3.4.0-19.el7.x86_64.rpm 1.7 MB 389-ds-base-devel-1.3.4.0-19.el7.x86_64.rpm 178 kB 389-ds-base-libs-

[Python基础]009.os模块(1)

os模块(1) 介绍 os 常量 文件目录操作 文件属性操作 遍历文件夹 介绍 os模块是系统服务应用程序接口,是Python最常用的模块之一. os模块包含了对文件和文件夹的操作,操作系统相关的操作等. 以及os.path模块,主要处理路径操作. os 常量 os.linesep 换行符,Unix为 \n ,Win32为 \r\n os.sep 文件路径分隔符,Unix为 /,Win32为 \ os.pathsep 多个文件路径间的分隔符,Unix为 :,Win32为 ; os.curdir

Python系统(os)相关操作

文件操作 python中常用于文件处理的模块有os,shutil等. 1 创建文件 文件的创建可以使用open()函数,如下创建一个test_file.txt的文件: >>> with open('/Users/xxx/test_file.txt','wt') as f_obj: ... print("This is the content from the test file---John",file=f_obj) ... >>> 执行完后,可以找

OX OS List

前言 没有多余的介绍,只是很简单而纯粹的分享平时生活和工作中所需要的部分 周期性更新稳定.靠谱.经验证的资源 更新记录 2014年08月26日 - 初稿 阅读原文 - http://wsgzao.github.io/post/os-list/ 扩展阅读 OX Software List - http://wsgzao.github.io/post/software-list/ MSDN 我告诉你 - http://msdn.itellyou.cn/ 目录 1 2 3 4 5 6 7 8 9 10