第8章 記憶體管理的概念.

Slides:



Advertisements
Similar presentations
定 格 入 格 破 格 —— 新诗仿写复习训练 仿照下列句子,再把 “ 人生 ” 比喻成 “ 大海 ”“ 天空 ” , 造两个句子。 如果说人生是一首优美的乐曲,那么痛苦则 是其中一个不可或缺的音符。 参考答案: 1 、如果说人生是一望无际的大海,那么挫折则 是其中一个骤然翻起的浪花。 2 、如果说人生是一片湛蓝的天空,那么失意则.
Advertisements

计算机基础 与应用案例教程 第一篇 基础理论篇 第4章 计算机软件系统.
第二章 微型计算机系统 第一节 基本术语和基本概念 第二节 计算机系统的基本构成 第三节 微机系统的硬件组成 第四节 微机系统的软件组成.
“三生教育”专题 生命·生存·生活.
Foundations of Computer Science
计算机组装与维护 项目一 个人计算机的合理配置 任务三 CPU识别与选购(内存、硬盘).
保良局方王錦全小學 學校健康促進經驗分享    盧淑宜校長.
渤海商品交易所 丹东玉米交易中心 全国统一客服电话:
寻觅节日诗情.
最新計算機概論 第3章 計算機組織.
第2章 主机 李渊林 本章要点   CPU 主板 2.3   内存 2.4 机箱和电源.
复习回顾 2.2 计算机硬件系统 2.1 计算机发展概述 1、芯片组的作用是什么? 1、计算机分为几代?主要元器件是什么?
營建自動化 -營建管理資訊化 授課老師:劉俊杰 副教授 中華民國89年9月27日.
第四章 存储器管理.
William Stallings 计算机组成与结构(第8版)
第四章 存储体系.
Chapter 9: Memory Management
主机DB2数据库应用与编程 任课老师:王湖南 四川大学计算机(软件)学院.
2.4 微型计算机硬件系统 主机系统 1. 微型计算机的诞生
作業系統的結構 日期 : 2018/9/17.
第1章 程式語言與Visual Basic的基礎
第6章 電腦軟體 應用軟體 多元程式處理 系統軟體 記憶體配置 作業系統簡介 虛擬記憶體 作業系統的演進與發展 行程管理
Chapter 5 電腦元件 目標---- 研讀完本章後,你應該可以: 閱讀有關電腦的廣告以及了解它的專業用語(行話)。
主讲教师:唐大仕 第5讲 计算机硬件 主讲教师:唐大仕
第 2 章 中央處理單元.
電腦硬體基本介紹 國立高雄大學資訊工程學系 林士倫 2010/10/21.
第5章 中央處理單元與主記憶體 5-1 中央處理單元-CPU 5-2 主記憶體.
計算機概論 第4章 從主機板看電腦的世界.
第1章 电脑的硬件组成 本章要点 拆卸电脑 PC的基本构成 主机箱内的主要部件 电脑主机箱背面的接口 主要配件的外观.
基本硬體介紹 1.主機板 2.CPU(運算中心) 3.記憶體(RAM-短暫記憶資料處) 4. 硬碟(HDD儲存資料處) 5.顯示卡(接螢幕)
電腦的種類 超級電腦 (supercomputer) 大型電腦 (Mainframe) 迷你電腦 ( Mini computer)
指令集架構 計算機也跟人類一樣,需要提供一套完整的語言讓人們跟它充分溝通,以完成正確的計算工作。
作 業 系 統 第三組 楊育翰 顏瑞霖.
第 6 章 存储系统 6.1 概述 存储器的层次结构 存储器的分类 存储器的基本组成
计算机组成与系统结构 陈泽宇 副教授.
5 Computer Organization (計算機組織).
作業系統 第八章 記憶體管理.
讲师:田家华 第1章 认识计算机 本章要点   计算机的发展 计算机的组成.
Game Boy Architecture 计算机体系结构课程报告 --刘继元.
Ch 9: Input/Output System 输入/输出系统
第2章 電腦硬體的架構及功能.
单片机应用技术 项目一 循环彩灯装置 第2讲 51单片机的结构与引脚 《单片机应用技术》精品课程组 湖北职业技术学院机电工程系.
第二章 電腦硬體知識 2-1 電腦的組成與架構 2-2 處理器 2-3 記憶體 2-4 輸入與輸出裝置 2-5 電腦的操作與保養.
重點 資料結構之選定會影響演算法 選擇對的資料結構讓您上天堂 程式.
如何赢一个机械键盘
Computer Inside/Outside
第2章 计算机基本硬件介绍及选购 2.1 主板 2.2 中央处理器CPU 2.3 内存.
宣城职业技术学院 项目一 了解计算机文化 计算机教研室 院级精品课程.
任务一:初识计算机 任务二:学习计算机中的信息表示 P /4/7.
電腦 報告.
第9章 虛擬記憶體 (virtual memory)
第二章 硬體資源管理.
作業系統 Operating System 第四單元 檔案系統
第四章 存储器管理 4.1 存储器的层次结构 4.2 程序的装入和链接 4.3 连续分配方式 4.4 基本分页存储管理方式
第四章 存 储 器 管 理 4.1 存储器的层次结构 4.2 程序的装入和链接 4.3 连续分配存储管理方式
第一章.
中国科学技术大学计算机系 陈香兰 2013Fall 第七讲 存储器管理 中国科学技术大学计算机系 陈香兰 2013Fall.
计算机系统结构(2012年春) ----存储层次: Cache基本概念
熟能生巧、每日一练: 五分钟打字练习.
第六章 記憶體.
核心系统数据库组 了解应用服务器 核心系统数据库组
实验三 键盘软加锁实验 2019/5/9.
第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能
作業系統概論 授課老師: 羅習五.
第11章 儲存裝置 與其管理.
真信心的果效 雅各書2:
作業系統概論 授課老師: 羅習五.
ARM裸机第二部分-ARM体系结构与汇编指令
县级支中心 乡镇基层服务点的建设 朱 庆 华.
第三章 计算机体系结构.
Presentation transcript:

第8章 記憶體管理的概念

作業系統對於使用者程式 的處理過程

記憶體的種類 揮發性記憶體(volatile memory) 非揮發性記憶體(nonvolatile memory) 電腦關機以後揮發性記憶體中的資料會消失,但是非揮發性記憶體中的資料依然存在 唯讀記憶體(ROM,read only memory)屬於非揮發性記憶體,裡頭儲存了電腦啟動時所需要的資料 一般PC的ROM主要用來儲存BIOS(basic input/output system),有點像一個小型的作業系統,在電腦開機時擔當大任

主記憶體在主機板上的位置

各種不同的記憶體封裝方式

處理器與記憶體之間的連結

快取記憶體(Cache Memory) 記憶體的速度跟CPU比起來還是太慢,所以跟CPU搭配工作的還有所謂的快取記憶體 一般說來,L1快取記憶體 (primary cache)位於CPU晶片內,L2 快取記憶體(secondary cache)在CPU晶片內或獨立的印刷電路版上 L3 cache也是一種快取記憶體,內建於記憶體中,儲存空間大小是L1<L2<L3 在現代記憶體的架構中,快取記憶體的容量一直在增加,對於CPU效能的提昇有很大的幫助

記憶體的架構

電腦的儲存媒體 主要的儲存媒體(primary storage) 次要的儲存媒體(secondary storage)

各種記憶體模組(memory module)

記憶體的技術規格 記憶體的技術規格有兩個最重要的特徵:儲存密度(density)與工作頻率 儲存密度是指矽晶片單位面積內記憶單位的數目,不過現在大家都習慣以記憶體晶片的儲存容量來描述這一部分的特徵

以DDR 500的記憶體為例 記憶體的資料頻寬可以由工作頻率與資料寬度來計算 記憶體工作頻率=500 MHz 則資料頻寬=(8 bytes)*500 MHz=4000 MB/s

記憶體管理程式的主要功能 管理主記憶體的分享(sharing)。 降低記憶體的存取時間(access time)。 將主記憶體空間分配給處理元。 協調處理元位址空間(address space) 與主記憶體之間的對應關係(mappings) 。 在現有的主記憶體容量下縮短存取時間。

各種記憶體的特徵與記憶體架構

記憶體設計主要的要求 系統的硬體與軟體設計應該儘量讓主記憶體的存取時間縮短。 主記憶體越大則系統可運用的資源就越豐裕,使用虛擬記憶體的技巧可以讓主記憶體用起來好像比實際的容量為大。 主記憶體的成本要合理,應該只占整個電腦系統的一小部分。

簡單的記憶體分配的演算法

靜態記憶體分配的演算法

程式處理的方式

程式的處理

原始碼編譯以後產生的relocatable object module

連結以後產生的absolute module

載入時期 (load time)

動態記憶體的觀念 程式語言通常會提供一些管理記憶體空間的功能 程式語言本身與記憶體空間的管理是無關的,作業系統才是主控者 我們可以在執行時期要求更多的記憶體空間,在系統層次上,其實作業系統並未真正的多分配了一些記憶體空間,只是把處理元還未用到的記憶體空間連結(bind)到動態的資料結構(dynamic data structure)  UNIX系統的malloc程序就可以做到上述的功能

UNIX系統的記憶體配置情況

記憶體的配置 在作業系統的組態設定中就將主記憶體空間分割成固定數目固定大小的方塊。這就是前面曾經介紹的靜態的固定分割的方式。 使用動態決定而且大小不一的(variable-sized)方塊來配置。我們盡量分配剛好符合需求的記憶體空間給處理元使用。

空間散佈(fragmentation)的問題 固定大小的配置方法會造成內部的空間散佈(internal fragmentation) ,因為分配給處理元的空間都是固定大小的,而且大於實際的需求 變動大小的配置方式依照處理元的需求來分配記憶體空間,內部的空間散佈比較不嚴重,記憶體管理程式必須監控變動大小的記憶體方塊,這種配置方式會造成所謂的外部的空間散佈(external fragmentation)問題

空間配置的策略 最佳配置(best fit) 最糟配置(worst fit) 最先配置(first fit) 下一個配置(next fit)

重定位的問題 載入程式(loader)只能針對絕對模組(absolute module)重定位,無法對執行映像(executable image)做類似的處理。 絕對模組具有特殊的格式,包括了compiler與linkage editor留下來的一些旗標(flags) ,載入程式產生執行映像時會移除這些旗標。

動態位址重定位(dynamic address relocation) 原始程式中的符號最先會連結到compiler產生的可重定位模組(relocatable module)裡的相對位址(relative address) link時則連結到絕對模組(absolute module)裡的位址,載入時則連結到真正的記憶體位址(memory address) 之後就可以進入執行時期

用硬體來支援動態位址重定位的方式

擴充之後的硬體重定位方法

交換作業(swapping) 把記憶體分割以後便於支援多工的(multiprogramming)作業,但是占有記憶體的處理元有可能在某些原因下暫停(blocked)執行 假如此時有其他的處理元需要記憶體空間繼續執行,則我們可以考慮把暫停的處理元移出主記憶體,讓其他的處理元能得到記憶體的資源 這是交換作業(swapping)的由來