# HG changeset patch
# User tobaru
# Date 1580480446 -32400
# Node ID dfb52a12c5a157def429e5d11c26c5a779a54a54
# Parent 7374211157709baf619f1341f873b13ce8f9c6b9
fig : MemoryConstitution
diff -r 737421115770 -r dfb52a12c5a1 paper/Paging.tex
--- a/paper/Paging.tex Fri Jan 31 18:02:14 2020 +0900
+++ b/paper/Paging.tex Fri Jan 31 23:20:46 2020 +0900
@@ -10,6 +10,18 @@
\section{Paging}
メモリ管理の手法に、Paging がある。Paging ではメモリを Page と呼ばれる固定長の単位に分割し、メモリとスワップ領域で Page を入れ替えて管理を行う。
+
+ \begin{figure}[ht]
+ \begin{center}
+ \includegraphics[width=160mm]{./fig/MemoryConstitution}
+ \end{center}
+ \caption{Layout of the virtual address space of a process and the layout of the physical address
+space. Note that if a machine has more than 2 Gbyte of physical memory, xv6 can use only the memory
+that fits between KERNBASE and 0xFE00000. Russ Cox(2018) xv6 a simple, Unix-like teaching operating system (Frans Kaashoek, Robert Morris)}
+ \label{fig:MemoryConstitution}
+\end{figure}
+
+
\section{User Space で Paging をする利点}
Context に必要な Page Tbale を提供する Interface と User Space からアクセスする API が必要である。
Page Table に相当するデータを Input Data Gear で受け取って変更した後、Context にあるメモリコントロールを担当する Meta Data Gear に goto で遷移してアクセスする。 Meta Computation レベルで処理することで Use Spaceでも Page Table を操作することができる。
diff -r 737421115770 -r dfb52a12c5a1 paper/fig/MemoryConstitution.pdf
Binary file paper/fig/MemoryConstitution.pdf has changed
diff -r 737421115770 -r dfb52a12c5a1 paper/fig/meta_cg_dg.pdf
Binary file paper/fig/meta_cg_dg.pdf has changed
diff -r 737421115770 -r dfb52a12c5a1 paper/master_paper.aux
--- a/paper/master_paper.aux Fri Jan 31 18:02:14 2020 +0900
+++ b/paper/master_paper.aux Fri Jan 31 23:20:46 2020 +0900
@@ -9,25 +9,27 @@
\@writefile{lof}{\contentsline {figure}{\numberline {2.1}{\ignorespaces Code Gear 間の継続}}{3}\protected@file@percent }
\newlabel{fig:codegear}{{2.1}{3}}
\@writefile{toc}{\contentsline {section}{\numberline {2.2}Meta Code Gear と Meta Data Gear}{4}\protected@file@percent }
+\@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces ノーマルレベルとメタレベルの継続の見え方}}{4}\protected@file@percent }
+\newlabel{fig:meta_cg_dg}{{2.2}{4}}
\@writefile{toc}{\contentsline {section}{\numberline {2.3}Context}{4}\protected@file@percent }
-\newlabel{contexth、 caption}{{2.3}{4}}
-\@writefile{lol}{\contentsline {lstlisting}{./src/context.h}{4}\protected@file@percent }
-\@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces ノーマルレベルとメタレベルの継続の見え方}}{7}\protected@file@percent }
-\newlabel{fig:meta_cg_dg}{{2.2}{7}}
-\@writefile{toc}{\contentsline {chapter}{\numberline {第3章}Xv6}{8}\protected@file@percent }
+\newlabel{contexth、 caption}{{2.3}{5}}
+\@writefile{lol}{\contentsline {lstlisting}{./src/context.h}{5}\protected@file@percent }
+\@writefile{toc}{\contentsline {chapter}{\numberline {第3章}Xv6}{7}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
-\@writefile{toc}{\contentsline {section}{\numberline {3.1}Kernel Space と User Space}{8}\protected@file@percent }
-\@writefile{toc}{\contentsline {section}{\numberline {3.2}system call}{8}\protected@file@percent }
-\newlabel{syscall_list}{{3.1}{8}}
-\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.1}\footnotesize xv6 のシステムコールのリスト}{8}\protected@file@percent }
-\@writefile{toc}{\contentsline {chapter}{\numberline {第4章}CbCXv6 での Paging}{10}\protected@file@percent }
+\@writefile{toc}{\contentsline {section}{\numberline {3.1}Kernel Space と User Space}{7}\protected@file@percent }
+\@writefile{toc}{\contentsline {section}{\numberline {3.2}system call}{7}\protected@file@percent }
+\newlabel{syscall_list}{{3.1}{7}}
+\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.1}\footnotesize xv6 のシステムコールのリスト}{7}\protected@file@percent }
+\@writefile{toc}{\contentsline {chapter}{\numberline {第4章}CbCXv6 での Paging}{9}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
-\@writefile{toc}{\contentsline {section}{\numberline {4.1}Xv6 を元にした Gears OS の実装}{10}\protected@file@percent }
-\@writefile{toc}{\contentsline {section}{\numberline {4.2}Paging}{10}\protected@file@percent }
-\@writefile{toc}{\contentsline {section}{\numberline {4.3}User Space で Paging をする利点}{10}\protected@file@percent }
-\@writefile{toc}{\contentsline {section}{\numberline {4.4}Paging の書き換え}{10}\protected@file@percent }
+\@writefile{toc}{\contentsline {section}{\numberline {4.1}Xv6 を元にした Gears OS の実装}{9}\protected@file@percent }
+\@writefile{toc}{\contentsline {section}{\numberline {4.2}Paging}{9}\protected@file@percent }
+\@writefile{toc}{\contentsline {section}{\numberline {4.3}User Space で Paging をする利点}{9}\protected@file@percent }
+\@writefile{toc}{\contentsline {section}{\numberline {4.4}Paging の書き換え}{9}\protected@file@percent }
+\@writefile{lof}{\contentsline {figure}{\numberline {4.1}{\ignorespaces Layout of the virtual address space of a process and the layout of the physical address space. Note that if a machine has more than 2 Gbyte of physical memory, xv6 can use only the memory that fits between KERNBASE and 0xFE00000. Russ Cox(2018) xv6 a simple, Unix-like teaching operating system (Frans Kaashoek, Robert Morris)}}{10}\protected@file@percent }
+\newlabel{fig:MemoryConstitution}{{4.1}{10}}
\@writefile{toc}{\contentsline {chapter}{\numberline {第5章}CbC インターフェース}{11}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
diff -r 737421115770 -r dfb52a12c5a1 paper/master_paper.lof
--- a/paper/master_paper.lof Fri Jan 31 18:02:14 2020 +0900
+++ b/paper/master_paper.lof Fri Jan 31 23:20:46 2020 +0900
@@ -1,7 +1,8 @@
\addvspace {10\p@ }
\addvspace {10\p@ }
\contentsline {figure}{\numberline {2.1}{\ignorespaces Code Gear 間の継続}}{3}%
-\contentsline {figure}{\numberline {2.2}{\ignorespaces ノーマルレベルとメタレベルの継続の見え方}}{7}%
+\contentsline {figure}{\numberline {2.2}{\ignorespaces ノーマルレベルとメタレベルの継続の見え方}}{4}%
\addvspace {10\p@ }
\addvspace {10\p@ }
+\contentsline {figure}{\numberline {4.1}{\ignorespaces Layout of the virtual address space of a process and the layout of the physical address space. Note that if a machine has more than 2 Gbyte of physical memory, xv6 can use only the memory that fits between KERNBASE and 0xFE00000. Russ Cox(2018) xv6 a simple, Unix-like teaching operating system (Frans Kaashoek, Robert Morris)}}{10}%
\addvspace {10\p@ }
diff -r 737421115770 -r dfb52a12c5a1 paper/master_paper.log
--- a/paper/master_paper.log Fri Jan 31 18:02:14 2020 +0900
+++ b/paper/master_paper.log Fri Jan 31 23:20:46 2020 +0900
@@ -1,4 +1,4 @@
-This is e-pTeX, Version 3.14159265-p3.8.2-190131-2.6 (utf8.euc) (TeX Live 2019) (preloaded format=platex 2020.1.16) 31 JAN 2020 16:55
+This is e-pTeX, Version 3.14159265-p3.8.2-190131-2.6 (utf8.euc) (TeX Live 2019) (preloaded format=platex 2020.1.16) 31 JAN 2020 21:31
entering extended mode
restricted \write18 enabled.
file:line:error style messages enabled.
@@ -370,30 +370,28 @@
]
File: ./fig/meta_cg_dg.pdf Graphic file (type pdf)
<./fig/meta_cg_dg.pdf>
-
-
-LaTeX Warning: Float too large for page by 43.27322pt on input line 43.
-
-(./src/context.h
+LaTeX Font Info: Font shape `JT1/hmc/m/n' will be
+(Font) scaled to size 10.53629pt on input line 53.
+LaTeX Font Info: Font shape `JY1/hmc/m/n' will be
+(Font) scaled to size 10.53629pt on input line 53.
+LaTeX Font Info: Font shape `JT1/hmc/bx/n' will be
+(Font) scaled to size 10.53629pt on input line 53.
+LaTeX Font Info: Font shape `JY1/hmc/bx/n' will be
+(Font) scaled to size 10.53629pt on input line 53.
+ [4] (./src/context.h
LaTeX Font Info: Font shape `JT1/hmc/m/n' will be
(Font) scaled to size 7.69775pt on input line 1.
-LaTeX Font Info: Font shape `JT1/hmc/m/n' will be
-(Font) scaled to size 10.53629pt on input line 9.
-LaTeX Font Info: Font shape `JY1/hmc/m/n' will be
-(Font) scaled to size 10.53629pt on input line 9.
-LaTeX Font Info: Font shape `JT1/hmc/bx/n' will be
-(Font) scaled to size 10.53629pt on input line 9.
-LaTeX Font Info: Font shape `JY1/hmc/bx/n' will be
-(Font) scaled to size 10.53629pt on input line 9.
- [4]) [5]) (./Xv6.tex [6] [7]
-第 3 章(8ページ)
-[8
+ [5])) (./Xv6.tex [6]
+第 3 章(7ページ)
+[7
-]) (./Paging.tex [9]
-第 4 章(10ページ)
-) (./cbc_interface.tex [10
+]) (./Paging.tex [8]
+第 4 章(9ページ)
+File: ./fig/MemoryConstitution.pdf Graphic file (type pdf)
+<./fig/MemoryConstitution.pdf>
+) (./cbc_interface.tex [9
-]
+] [10]
第 5 章(11ページ)
[11
@@ -404,12 +402,12 @@
)
Here is how much of TeX's memory you used:
- 6313 strings out of 493985
- 89466 string characters out of 6166648
- 368164 words of memory out of 5000000
- 10632 multiletter control sequences out of 15000+600000
+ 6319 strings out of 493985
+ 89633 string characters out of 6166648
+ 368175 words of memory out of 5000000
+ 10637 multiletter control sequences out of 15000+600000
16577 words of font info for 84 fonts, out of 8000000 for 9000
107 hyphenation exceptions out of 8191
- 38i,11n,36p,411b,1817s stack positions out of 5000i,500n,10000p,200000b,80000s
+ 32i,11n,36p,470b,1800s stack positions out of 5000i,500n,10000p,200000b,80000s
-Output written on master_paper.dvi (27 pages, 96688 bytes).
+Output written on master_paper.dvi (27 pages, 98212 bytes).
diff -r 737421115770 -r dfb52a12c5a1 paper/master_paper.lol
--- a/paper/master_paper.lol Fri Jan 31 18:02:14 2020 +0900
+++ b/paper/master_paper.lol Fri Jan 31 23:20:46 2020 +0900
@@ -1,5 +1,5 @@
-\contentsline {lstlisting}{./src/context.h}{4}%
-\contentsline {lstlisting}{\numberline {3.1}\footnotesize xv6 のシステムコールのリスト}{8}%
+\contentsline {lstlisting}{./src/context.h}{5}%
+\contentsline {lstlisting}{\numberline {3.1}\footnotesize xv6 のシステムコールのリスト}{7}%
\contentsline {lstlisting}{\numberline {5.1}\footnotesize vm のインターフェース}{11}%
\contentsline {lstlisting}{\numberline {5.2}\footnotesize vm インターフェースの実装}{12}%
\contentsline {lstlisting}{\numberline {5.3}\footnotesize vm private のヘッダーファイル}{15}%
diff -r 737421115770 -r dfb52a12c5a1 paper/master_paper.pdf
Binary file paper/master_paper.pdf has changed
diff -r 737421115770 -r dfb52a12c5a1 paper/master_paper.synctex.gz
Binary file paper/master_paper.synctex.gz has changed
diff -r 737421115770 -r dfb52a12c5a1 paper/master_paper.toc
--- a/paper/master_paper.toc Fri Jan 31 18:02:14 2020 +0900
+++ b/paper/master_paper.toc Fri Jan 31 23:20:46 2020 +0900
@@ -3,14 +3,14 @@
\contentsline {section}{\numberline {2.1}Code Gear と Data Gear}{3}%
\contentsline {section}{\numberline {2.2}Meta Code Gear と Meta Data Gear}{4}%
\contentsline {section}{\numberline {2.3}Context}{4}%
-\contentsline {chapter}{\numberline {第3章}Xv6}{8}%
-\contentsline {section}{\numberline {3.1}Kernel Space と User Space}{8}%
-\contentsline {section}{\numberline {3.2}system call}{8}%
-\contentsline {chapter}{\numberline {第4章}CbCXv6 での Paging}{10}%
-\contentsline {section}{\numberline {4.1}Xv6 を元にした Gears OS の実装}{10}%
-\contentsline {section}{\numberline {4.2}Paging}{10}%
-\contentsline {section}{\numberline {4.3}User Space で Paging をする利点}{10}%
-\contentsline {section}{\numberline {4.4}Paging の書き換え}{10}%
+\contentsline {chapter}{\numberline {第3章}Xv6}{7}%
+\contentsline {section}{\numberline {3.1}Kernel Space と User Space}{7}%
+\contentsline {section}{\numberline {3.2}system call}{7}%
+\contentsline {chapter}{\numberline {第4章}CbCXv6 での Paging}{9}%
+\contentsline {section}{\numberline {4.1}Xv6 を元にした Gears OS の実装}{9}%
+\contentsline {section}{\numberline {4.2}Paging}{9}%
+\contentsline {section}{\numberline {4.3}User Space で Paging をする利点}{9}%
+\contentsline {section}{\numberline {4.4}Paging の書き換え}{9}%
\contentsline {chapter}{\numberline {第5章}CbC インターフェース}{11}%
\contentsline {section}{\numberline {5.1}インターフェースの定義}{11}%
\contentsline {section}{\numberline {5.2}インターフェースの実装}{12}%
diff -r 737421115770 -r dfb52a12c5a1 thsis_paging.mm
--- a/thsis_paging.mm Fri Jan 31 18:02:14 2020 +0900
+++ b/thsis_paging.mm Fri Jan 31 23:20:46 2020 +0900
@@ -4,14 +4,26 @@
+
+
+
+
+
-
+
+
+
+
+
+
+
-
+
+
@@ -23,16 +35,21 @@
-
+
+
-
-
+
+
+
+
+
+
@@ -40,8 +57,9 @@
-
+
+
@@ -49,28 +67,44 @@
+
+
+
+
-
-
+
+
-
+
+
-
+
+
+
-
+
+
-
+
+
-
+
+
+
+
+
+
+
+