Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
たけおか しょうぞう
PDF, PPTX
2,652 views
大昔のMMU
Ancestral MMU of micro computers
Technology
◦
Read more
3
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 23
2
/ 23
3
/ 23
Most read
4
/ 23
5
/ 23
6
/ 23
7
/ 23
8
/ 23
9
/ 23
10
/ 23
11
/ 23
12
/ 23
13
/ 23
Most read
14
/ 23
15
/ 23
16
/ 23
Most read
17
/ 23
18
/ 23
19
/ 23
20
/ 23
21
/ 23
22
/ 23
23
/ 23
More Related Content
PPTX
地理分散DBについて
by
Kumazaki Hiroki
PPTX
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
by
NTT DATA Technology & Innovation
PPTX
DockerコンテナでGitを使う
by
Kazuhiro Suga
PDF
DockerとPodmanの比較
by
Akihiro Suda
PPTX
分散ストレージ技術Cephの最新情報
by
Emma Haruka Iwao
PPTX
Dockerからcontainerdへの移行
by
Akihiro Suda
PDF
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
by
NTT DATA OSS Professional Services
PDF
トランザクションの並行実行制御 rev.2
by
Takashi Hoshino
地理分散DBについて
by
Kumazaki Hiroki
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
by
NTT DATA Technology & Innovation
DockerコンテナでGitを使う
by
Kazuhiro Suga
DockerとPodmanの比較
by
Akihiro Suda
分散ストレージ技術Cephの最新情報
by
Emma Haruka Iwao
Dockerからcontainerdへの移行
by
Akihiro Suda
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
by
NTT DATA OSS Professional Services
トランザクションの並行実行制御 rev.2
by
Takashi Hoshino
What's hot
PDF
EnrootとPyxisで快適コンテナ生活
by
Kuninobu SaSaki
PPTX
テストコードの DRY と DAMP
by
Yusuke Kagata
PDF
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
by
Masaya Tahara
PDF
NEDIA_SNIA_CXL_講演資料.pdf
by
Yasunori Goto
PDF
ゼロからはじめるKVM超入門
by
VirtualTech Japan Inc.
PDF
Lxc で始めるケチケチ仮想化生活?!
by
Etsuji Nakai
PDF
CyberAgent における OSS の CI/CD 基盤開発 myshoes #CICD2021
by
whywaita
PDF
SQL大量発行処理をいかにして高速化するか
by
Shogo Wakayama
PDF
ストリーム処理を支えるキューイングシステムの選び方
by
Yoshiyasu SAEKI
PDF
Python 3.9からの新定番zoneinfoを使いこなそう
by
Ryuji Tsutsui
PDF
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
by
Masahito Zembutsu
PDF
NTT DATA と PostgreSQL が挑んだ総力戦
by
NTT DATA OSS Professional Services
PPTX
Docker Tokyo
by
cyberblack28 Ichikawa
PDF
Ormとの付き合い方
by
豊明 尾古
PDF
[GKE & Spanner 勉強会] Cloud Spanner の技術概要
by
Google Cloud Platform - Japan
PDF
RDF Semantic Graph「RDF 超入門」
by
オラクルエンジニア通信
PPTX
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
by
NTT DATA Technology & Innovation
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
PDF
CXL_説明_公開用.pdf
by
Yasunori Goto
PDF
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
by
VirtualTech Japan Inc.
EnrootとPyxisで快適コンテナ生活
by
Kuninobu SaSaki
テストコードの DRY と DAMP
by
Yusuke Kagata
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
by
Masaya Tahara
NEDIA_SNIA_CXL_講演資料.pdf
by
Yasunori Goto
ゼロからはじめるKVM超入門
by
VirtualTech Japan Inc.
Lxc で始めるケチケチ仮想化生活?!
by
Etsuji Nakai
CyberAgent における OSS の CI/CD 基盤開発 myshoes #CICD2021
by
whywaita
SQL大量発行処理をいかにして高速化するか
by
Shogo Wakayama
ストリーム処理を支えるキューイングシステムの選び方
by
Yoshiyasu SAEKI
Python 3.9からの新定番zoneinfoを使いこなそう
by
Ryuji Tsutsui
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
by
Masahito Zembutsu
NTT DATA と PostgreSQL が挑んだ総力戦
by
NTT DATA OSS Professional Services
Docker Tokyo
by
cyberblack28 Ichikawa
Ormとの付き合い方
by
豊明 尾古
[GKE & Spanner 勉強会] Cloud Spanner の技術概要
by
Google Cloud Platform - Japan
RDF Semantic Graph「RDF 超入門」
by
オラクルエンジニア通信
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
by
NTT DATA Technology & Innovation
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
CXL_説明_公開用.pdf
by
Yasunori Goto
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
by
VirtualTech Japan Inc.
Similar to 大昔のMMU
PDF
仮想化技術によるマルウェア対策とその問題点
by
Kuniyasu Suzaki
PDF
あるmmapの話
by
nullnilaki
PDF
デバドラを書いてみよう!
by
Masami Ichikawa
PDF
BitVisor Summit 7「8. ベアメタルクラウドにおけるハードウェア保護に関する研究 & Advent Calendar について」
by
BitVisor
PDF
What's Operating System?
by
Naruhiko Ogasawara
PDF
qpstudy 2014.04 ハードウェア設計の勘所
by
Takeshi HASEGAWA
PDF
Page frame management
by
siburu
PDF
kagami_comput2015_13
by
swkagami
PDF
kagamicomput201713
by
swkagami
PDF
1次ベーシック講座情報第1回 修正版
by
Nashiro Daisuke
PDF
エバンジェリストが語るパワーシステム特論 ~ 第1回:IBMオフコンはいかにして生き残れたのか?
by
Takumi Kurosawa
PDF
2009-03-24 第3回セキュアVMシンポジウム
by
Takahiro Shinagawa
PDF
kagami_comput2015_5
by
swkagami
PDF
2008-11-18 セキュアVMワークショップ
by
Takahiro Shinagawa
PDF
kagami_comput2016_13
by
swkagami
PDF
kagamicomput201805
by
swkagami
PDF
kagamicomput201705
by
swkagami
PDF
kagami_comput2016_05
by
swkagami
PDF
仮想記憶の構築法
by
magoroku Yamamoto
PDF
Dmedia2011 03
by
Akao Koichi
仮想化技術によるマルウェア対策とその問題点
by
Kuniyasu Suzaki
あるmmapの話
by
nullnilaki
デバドラを書いてみよう!
by
Masami Ichikawa
BitVisor Summit 7「8. ベアメタルクラウドにおけるハードウェア保護に関する研究 & Advent Calendar について」
by
BitVisor
What's Operating System?
by
Naruhiko Ogasawara
qpstudy 2014.04 ハードウェア設計の勘所
by
Takeshi HASEGAWA
Page frame management
by
siburu
kagami_comput2015_13
by
swkagami
kagamicomput201713
by
swkagami
1次ベーシック講座情報第1回 修正版
by
Nashiro Daisuke
エバンジェリストが語るパワーシステム特論 ~ 第1回:IBMオフコンはいかにして生き残れたのか?
by
Takumi Kurosawa
2009-03-24 第3回セキュアVMシンポジウム
by
Takahiro Shinagawa
kagami_comput2015_5
by
swkagami
2008-11-18 セキュアVMワークショップ
by
Takahiro Shinagawa
kagami_comput2016_13
by
swkagami
kagamicomput201805
by
swkagami
kagamicomput201705
by
swkagami
kagami_comput2016_05
by
swkagami
仮想記憶の構築法
by
magoroku Yamamoto
Dmedia2011 03
by
Akao Koichi
More from たけおか しょうぞう
PDF
RISC-Vの可能性
by
たけおか しょうぞう
PDF
どうして昔の人は八進数でしゃべるのか?
by
たけおか しょうぞう
PDF
RISC-Vの可能性
by
たけおか しょうぞう
PDF
俺ASICと俺CPU“松竹V(しょうちくぶい)”
by
たけおか しょうぞう
PDF
"ros2rapper", Hardware implimentation of ROS2 communication Protocol without ...
by
たけおか しょうぞう
PDF
俺のSoC, AX1001 ができたぞー. AX1001:the SoC for edge Devices and robot modules,
by
たけおか しょうぞう
PDF
あるRISC-V CPUの 浮動小数点数(異常なし)
by
たけおか しょうぞう
PDF
Lisp_chibi_machine 190427
by
たけおか しょうぞう
PDF
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
by
たけおか しょうぞう
PDF
SOAR:Smalltalk on RISC
by
たけおか しょうぞう
PDF
無脳スマートスピーカを 越えレレレのレ
by
たけおか しょうぞう
PDF
Riscv+fpga200606
by
たけおか しょうぞう
PDF
俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...
by
たけおか しょうぞう
PDF
the original SoC "ORE_SoC" with "ROS2rapper"
by
たけおか しょうぞう
PDF
Takep lpc1114-190614
by
たけおか しょうぞう
PDF
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
by
たけおか しょうぞう
PDF
Using Retro-CPU with low aspirations, No FPGA
by
たけおか しょうぞう
PDF
Takepino LPC1114
by
たけおか しょうぞう
PDF
Takep lpc1114-190613
by
たけおか しょうぞう
PDF
初歩的な部品の知識
by
たけおか しょうぞう
RISC-Vの可能性
by
たけおか しょうぞう
どうして昔の人は八進数でしゃべるのか?
by
たけおか しょうぞう
RISC-Vの可能性
by
たけおか しょうぞう
俺ASICと俺CPU“松竹V(しょうちくぶい)”
by
たけおか しょうぞう
"ros2rapper", Hardware implimentation of ROS2 communication Protocol without ...
by
たけおか しょうぞう
俺のSoC, AX1001 ができたぞー. AX1001:the SoC for edge Devices and robot modules,
by
たけおか しょうぞう
あるRISC-V CPUの 浮動小数点数(異常なし)
by
たけおか しょうぞう
Lisp_chibi_machine 190427
by
たけおか しょうぞう
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
by
たけおか しょうぞう
SOAR:Smalltalk on RISC
by
たけおか しょうぞう
無脳スマートスピーカを 越えレレレのレ
by
たけおか しょうぞう
Riscv+fpga200606
by
たけおか しょうぞう
俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...
by
たけおか しょうぞう
the original SoC "ORE_SoC" with "ROS2rapper"
by
たけおか しょうぞう
Takep lpc1114-190614
by
たけおか しょうぞう
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
by
たけおか しょうぞう
Using Retro-CPU with low aspirations, No FPGA
by
たけおか しょうぞう
Takepino LPC1114
by
たけおか しょうぞう
Takep lpc1114-190613
by
たけおか しょうぞう
初歩的な部品の知識
by
たけおか しょうぞう
Recently uploaded
PDF
第21回 Gen AI 勉強会「NotebookLMで60ページ超の スライドを作成してみた」
by
嶋 是一 (Yoshikazu SHIMA)
PDF
アジャイル導入が止まる3つの壁 ─ 文化・他部門・組織プロセスをどう乗り越えるか
by
Graat(グラーツ)
PDF
20260119_VIoTLT_vol22_kitazaki_v1___.pdf
by
Ayachika Kitazaki
PDF
Starlink Direct-to-Cell (D2C) 技術の概要と将来の展望
by
CRI Japan, Inc.
PDF
ST2024_PM1_2_Case_study_of_local_newspaper_company.pdf
by
akipii ogaoga
PDF
Team Topology Adaptive Organizational Design for Rapid Delivery of Valuable S...
by
akipii ogaoga
PDF
100年後の知財業界-生成AIスライドアドリブプレゼン イーパテントYouTube配信
by
e-Patent Co., Ltd.
PDF
FY2025 IT Strategist Afternoon I Question-1 Balanced Scorecard
by
akipii ogaoga
PDF
Reiwa 7 IT Strategist Afternoon I Question-1 3C Analysis
by
akipii ogaoga
PDF
Reiwa 7 IT Strategist Afternoon I Question-1 Ansoff's Growth Vector
by
akipii ogaoga
第21回 Gen AI 勉強会「NotebookLMで60ページ超の スライドを作成してみた」
by
嶋 是一 (Yoshikazu SHIMA)
アジャイル導入が止まる3つの壁 ─ 文化・他部門・組織プロセスをどう乗り越えるか
by
Graat(グラーツ)
20260119_VIoTLT_vol22_kitazaki_v1___.pdf
by
Ayachika Kitazaki
Starlink Direct-to-Cell (D2C) 技術の概要と将来の展望
by
CRI Japan, Inc.
ST2024_PM1_2_Case_study_of_local_newspaper_company.pdf
by
akipii ogaoga
Team Topology Adaptive Organizational Design for Rapid Delivery of Valuable S...
by
akipii ogaoga
100年後の知財業界-生成AIスライドアドリブプレゼン イーパテントYouTube配信
by
e-Patent Co., Ltd.
FY2025 IT Strategist Afternoon I Question-1 Balanced Scorecard
by
akipii ogaoga
Reiwa 7 IT Strategist Afternoon I Question-1 3C Analysis
by
akipii ogaoga
Reiwa 7 IT Strategist Afternoon I Question-1 Ansoff's Growth Vector
by
akipii ogaoga
大昔のMMU
1.
大昔の MMU (Memory Management Unit) 2017.JUL.22 たけおか@AXE/たけおかラボ @takeoka
2.
1.「リレーショナルデータベースを内在するカーネルプログ ラム、方法及び装置」 ● かなり広範囲に適用される… ● データベースをカーネル空間内で動作させる ● 特許番号【特許第5711840号】 ● 登録日 【2015年3月13日】 ● 株式会社ネクスティエレクトロニクスと、 たけおかラボ株式会社との共同特許 ● 2.「アプリケーションに依存することなくファイルにアクセスする OSプログラム及び方法」 ● データファイルに、データへのアクセス手続きを、くっつけておく ● OS API経由で、データファイル内のアクセス手続きを呼び出す ● どんな形式のファイルでも、データの読み書きができる ● 特許番号【特許第6143038号】 ● 登録日 【2017年5月19日】 ● 株式会社ネクスティエレクトロニクスと、 たけおかラボ株式会社との共同特許 ※たけおかラボ(株)は、(株)アックスの子会社 取得済み特許:今後の基本ソフトウェアの重要な部分
3.
8bit時代 MP/M 8080
(1979年) ● MP/M (CP/Mのマルチユーザ版) – 8080 CPU ● Z80の先祖。Z80は、8080のバイナリ上位互換 ● クロック:2MHz – マルチユーザ/マルチタスク ● 最小 32KB メモリで動作 – バンク切り替えが通常の時代 ● 「バンク切り替え」一般人には、PC9801(8086,V30)で1MBを超えるときに、有名になる ● MP/Mは、メモリの下位32KB〜48KBを、切り替えて使用 – 上位に、OSが居た – MMUがあれば、使用できた ● マッピング(アドレス変換) – アクセス管理、不在ページ管理など無い ● バンク切り替え/ページ・テーブル操作部分は、抽象化、分離されていた – XIOS部分を、ハードウェアに合わせて、コーディング – 1MBぐらいの実メモリを扱える ● 8080,Z80の論理空間は64KB
4.
4 OS常駐 使えない 使えない バンク切り替え・メモリ模式図 ● 物理メモリの上位アドレスは、バンク・レジスタで与える ● (主に80系の場合)上位アドレスには、OSが常駐する ● 物理メモリの一部は、使えないことが多い –
OS常駐部と重なる部分が、無駄になるハードウェアが一般的 論理空間 バンク#0 0番地 上位アドレス バンク#1 バンク#2 OS常駐 バンク・ レジスタ
5.
5 バンク切り替え・メモリ模式図 バンク#0 0番地 上位アドレス OS常駐 バンク・ レジスタ OS常駐 使えない バンク#1 使えない バンク#2
6.
6 昔のハードウェア バンク切り替え(1) ● TLBなんか無い ● 物理アドレス上位は、バンク・レジスタで拡張 ● 64KB 論理空間の上位8〜16KBぐらいは、バンク切り替えが効かないようにする –
論理空間の最上位アドレスには、OS(CP/Mとか)が常駐 – リセット時には、ROMが出てくるようにも、しなければならない バンク・ レジスタ CPU メイン・ メモリ バンク設定 Z80系は、 I/O命令 下位アドレス 13bit 変換テーブルが一つの場合 データ・バス 物理メモリ 上位アドレス 上位アドレス 3bit 最上位8KB検出 (3bitのAND==1 Then bank=0)
7.
7 マッパ・メモリ管理模式図 ● プロセスは論理アドレス空間で動作 ● 実メモリと、プロセス空間のメモリ・アドレスは異なる ● メモリ保護がある ● 基本的に、他のプロセスのメモリは、触れない ● プロセス空間に、物理ページを貼り付けてアクセス可能にすることを、「マップする」という プロセス B 機械の実メモリマップ プロセスの仮想空間 プロセス
A プロセスの仮想空間 実メモリがマップされる ページ単位で 通常はOSが暗黙に行う 実メモリがマップされる ページ単位で 通常はOSが暗黙に行う
8.
8 昔のハードウェア mapper(1) ● TLBなんか無い(TLBミスのペナルティは無い \(^^)/) ● 全アドレスを、テーブルで持つ ● 高速SRAMにテーブルを入れる ● テーブルをセットするのは、ちょっとした工夫が要る –
セットしたいテーブルのアドレスを、上位アドレスに出し、データ線から書き込み 高速 SRAM CPU メイン・ メモリ アドレス 読み出しデータ 上位アドレス 4bit(PDP-11, Z80, 6809) 12bit(680x0) 下位アドレス 12bit (4KB/ページ) 変換テーブルが一つの場合 データ・バス 書き込みデータ 上位アドレス 本数、多め。 8bitで、1MB 物理メモリ
9.
9 TLBインコヒーレンシ、なにそれ?! ● TLBなんか無い ● 昔は良かった – 2CPUぐらいなら、あり得た – CPU内キャッシュが無い時代だった。メイン・メモリも超遅かった 高速 SRAM CPU メイン・ メモリ DRAM アドレス 読み出しデータ 上位アドレス 4bit(PDP-11, Z80,
6809) 12bit(680x0) 変換テーブルが一つの場合 上位アドレス 本数、多め。 8bitで、1MB 物理メモリ CPU CPU
10.
10 昔のハードウェア mapper (2) ● 全アドレスを、テーブルで持つ ● 高速SRAMにテーブルを入れる ● コンテキスト(プロセス)を、複数持てる ● コンテキストが複数
無いと、プロセス・スイッチの度に、全テーブルの入れ替えが 発生 高速 SRAM CPU メイン・ メモリ アドレス 読み出しデータ 上位アドレス 4bit(PDP-11, Z80, 6809) 12bit(680x0) 下位アドレス 12bit (4KB/ページ) 複数コンテキストの、変換テーブルがある場合 データ・バス 書き込みデータ 上位アドレス 本数、多め。 8bitで、1MB 物理メモリ コンテキスト・ レジスタ
11.
6829MMU 8bit時代 (1980年ごろ) ●
6829(67476)は、6809専用MMU – アドレス変換のマッパ。64KB論理空間を、2MBの物理メモリにマップ ● 16bit アドレス→21bit アドレス – 2KB/ページ(下位11bit) – コンテキスト(“TASK”)は、4つ ● 6829を増設すると、増やせる – システム/ユーザの管理(プロテクション)はある – DMAは、Task#1 を使用 ● システム・モード/ユーザ・モードがある – 6809CPUには、そういう概念は無い。 MMUがサポート – システム・モードでは、MMU操作ができる ● ユーザ・モードは、MMUに触れない – 見えないページは、絶対に見れない ● CPUが外部割り込みを受けるか、ソフトウェア割り込み(SWI, (INT))を実行すると 6829は、システム・モードになる – CPUが出力しているステータス信号を、見ていると,割り込み応答 実行が判る ● システム・モードから、ユーザ・モードへの移行 – CPUが、6829のヒューズ・レジスタに値を書き込む ● 何クロック後に、ユーザ・モードになるか ● プロセス再開の定石ルーチンの実行クロック数は、決まっている – キャッシュとか無いので、いつも同じクロック数 – その後、ぴったりのクロック後に、ユーザ・プロセスの再開を行う @houmei さんのつぶやきより
12.
6829MMU 8bit時代 (1980年ごろ) ● システム・モードから、ユーザ・モードへの移行 –
CPUが、6829のヒューズ・レジスタに値を書き込む ● 何クロック後に、ユーザ・モードになるか ● プロセス再開の定石ルーチンの実行クロック数は、決まっている – キャッシュとか無いので、いつも同じクロック数 – その後、ぴったりのクロック後に、ユーザ・プロセスの再開を行う 1サイクル FUSEレジスタに セット ユーザ空間の スタックから、 情報をレジスタに 復帰 Return from Interrupt ユーザ空間に切り替わる Motorola MC6829 advanced informationより http://matthieu.benoit.free.fr/cross/data_sheets/mc6829.pdf
13.
8bit時代 OS/9 6809
(1982年ごろ) ● OS/9 6809 Level 1 – MMU無し版, 64KB で動作 – マルチタスクOS ● プログラム・ローダを手抜きしていたので、PIC(位置独立コード)しか許されな かった – すべての変数は、indexレジスタ相対 – 6809は、ポインタ・レジスタが4本もあった(8bit機としては、すごく多い) – プログラム中の定数は、PC(プログラム・カウンタ)相対で参照 ● 実行バイナリを、外部記憶から読むことを嫌がり メモリをスキャンして、 ヘッダを見つけたら、終わりまでのCRCを計算し、 CRCが合致したら、そのバイナリが正常であるとして、実行を開始した (^^; – ROMも、スキャン対象。ROM組込みのコマンド・バイナリも発見された ● OS/9 68000 は、フツーになってしまい、特に面白くはない(残念)
14.
8bit時代 OS/9 6809
(1980年ごろ) ● OS/9 6809 Level2 – MMUあり版 – 2MBまでの物理メモリをサポート – Gimix というハードウェアが、OS/9 6809 Level2のリファレンス・ ハードウェア ● 割と手抜き ● 当時は、高速SRAMで、アドレス変換機構を作っても、十分、高速に動作した – 日立のBASIC Master S-1が、また、 独自のマッパ ● このマッパは、まっとう ● モトローラ純正MMU 6829 – Gimixとは、まったく異なる
15.
PDP/11のMMU(1) ● PDP/11 のMMUは、マッパ –
アドレス変換 – 不在ページ/書き込み禁止の検出はできる ● だが、フォールトからの回復&再開はできない – 例えば、write命令は、フォールトを起こしても、終了してしまう ● 64KBの論理空間を、8つのセグメントに分割 ● 各セグメントの論理アドレスは、物理メモリ・アドレスにマップ ● 各セグメント長は、0〜8KBytesまで可変 (64Bytes単位で) ● セグメントは、ベース・アドレスから、Up/Down方向に伸ばせる – Downは、スタックの伸長に ● PDP-11/40, PDP-11/45 などは、248 KB物理メモリ(12 bit長)に変換 ● PDP-11/70, PDP-11/44, PDP-11/23などは、4MB物理メモリ(16 bit 長)に変換 – 64Byte(6bit長)が単位 http://gunkies.org/wiki/PDP-11_Memory_Management
16.
PDP/11のMMU(2) ● UNIX Ver.7は、マッパを使用 –
デマンド・ページングとかやらない ● RSX/11M (PDP/11 のネイティブOS) – オーバレイによるプログラム・コードの入れ替え ● プログラムを、複数のセグメントで構成 ● リンク時に、セグメントを指定 ● サブルーチン・コール時に、適切なセグメントを入れ替え – 不適切なセグメントの依存関係は、リンクがエラーになる
17.
8bit時代 (1983年) ● CP/M
3 – シングル・ユーザ、シングル・タスク – メモリマッパなどがあれば使えた – HD64180 (日立のニセZ80、後のZ180) のメモリマッパが、 CP/M 3用
18.
18 64180・メモリ管理模式図 ● 論理空間が、3領域に分割 & アドレス変換 –
低位メモリ – コモン・エリア(最上位=OS常駐部) – バンク・エリア(中央部) ● CP/M Plusに最適 バンク・ エリア コモン・エリア 論理アドレス 物理メモリ 低位メモリ OS常駐部 バンク#1 バンクの 低位リミット レジスタ コモン・エリアの 低位リミット レジスタ コモン・ベース・ レジスタ バンク・ベース・ レジスタ 低位メモリ バンク#2
19.
19 64180・メモリ管理機構 ● コンパレータ(比較器),adder(加算器)がある。 ● 日立が好きな感じ(私の主観的 感想) Hitachi HD6180
Family より http://www.farnell.com/datasheets/99468.pdf
20.
16bit時代 Z8001用 MMU
(1982年ごろ) ● Z8010:Z8001用MMU ● マッパであった – セグメント単位のアドレス変換 – セグメントは、物理的に連続した領域 – セグメントのサイズ・チェックは行う ● アクセス管理はあった ● ユーザ/システム ● Z8001は、フォールトからの回復はできなかった – Z8003で可能に MMU CPU メイン・ メモリ アドレス/コマンド 実アドレス 最上位アドレス (セグメント番号) 7bit アドレス・データ・バス下位8bit アドレス・データ・バス上位8bit 上位アド レス 16bit
21.
SUN2(1983年),SUN3(1985年) ● 68010, 68020
に、外付け – 高速SRAMで、変換テーブル – コンテキストは、4つ (SUN3/160?) – SUN2もコンテキストは複数 ● MMUへのコマンドはアドレスに載せた – マッパ中のテーブルへのアドレス設定コマンドなど – 変なアドレスからの読み込みが、テーブルへのセット・コマンドだったり 高速 SRAM CPU メイン・ メモリ アドレス 読み出しデータ 上位アドレス 12bit 下位アドレス 12bit (4KB/ページ) 複数コンテキストの、変換テーブルがある場合 データ・バス 書き込みデータ 上位アドレス 本数、多め。 だが、実メモリ 16MBのモデ ルは希少 コンテキスト・ レジスタ ?繋がっていないと思われ… 2bit程度〜
22.
SONY News (1987年) ●
68020 に、外付け – 高速SRAMで、変換テーブル – Newsの最初のデスクトップ・モデルの コンテキストは、1つ (だったはず OS用コンテキストがあったかも) – プロセス・スイッチのたびに、MMUテーブル入れ替えが発生 ● SUN3の同じクロック周波数のモデルと比べて、もっさり動作した
23.
68030(1987年) ● オンチップMMU内蔵 ● TLB方式 –
CPUコア内のマイクロコードによる、ハード・ウォーク – 初代Sparc(1987), PowerPC601(1992)は、ハード・ウォーク ● PPC603は、ソフト・ウォーク 〜現在に至る… ● X86, ARMは、伝統のハード・ウォーク ● 他のアーキテクチャは、ソフトウェアによるページ・テーブル・ ウォークが多い
Download