Mercurial > hg > Members > taiki > slides
comparison seminar2013/0509.html @ 2:7f4128b2369a
update seminar slides
author | taiki <taiki@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 04 Jun 2013 17:15:27 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
1:d3f740120b55 | 2:7f4128b2369a |
---|---|
1 <!-- | |
2 Google IO 2012 HTML5 Slide Template | |
3 | |
4 Authors: Eric Bidelman <ebidel@gmail.com> | |
5 Luke Mahé <lukem@google.com> | |
6 | |
7 URL: https://code.google.com/p/io-2012-slides | |
8 --> | |
9 <!DOCTYPE html> | |
10 <html> | |
11 <head> | |
12 <title>Presentation</title> | |
13 <meta charset="utf-8"> | |
14 <meta http-equiv="X-UA-Compatible" content="chrome=1"> | |
15 <!--<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">--> | |
16 <!--<meta name="viewport" content="width=device-width, initial-scale=1.0">--> | |
17 <!--This one seems to work all the time, but really small on ipad--> | |
18 <!--<meta name="viewport" content="initial-scale=0.4">--> | |
19 <meta name="apple-mobile-web-app-capable" content="yes"> | |
20 <link rel="stylesheet" media="all" href="css/default.css"> | |
21 <link rel="stylesheet" media="only screen and (max-device-width: 480px)" href="../io2012slides/theme/css/phone.css"> | |
22 <base target="_blank"> <!-- This amazingness opens all links in a new tab. --> | |
23 <script data-main="../io2012slides/js/slides" src="../io2012slides/js/require-1.0.8.min.js"></script> | |
24 </head> | |
25 <body style="opacity: 0"> | |
26 | |
27 <slides class="layout-widescreen"> | |
28 | |
29 <!-- | |
30 <slide class="logoslide nobackground"> | |
31 <article class="flexbox vcenter"> | |
32 <span><img src="../io2012slides/images/google_developers_logo.png"></span> | |
33 </article> | |
34 </slide> | |
35 --> | |
36 | |
37 <slide class="title-slide segue nobackground"> | |
38 <aside class="gdbar"><img src="../images/concurrent.png"></aside> | |
39 <!-- The content of this hgroup is replaced programmatically through the slide_config.json. --> | |
40 <hgroup class="auto-fadein"> | |
41 <h1 data-config-title><!-- populated from slide_config.json --></h1> | |
42 <h2 data-config-subtitle><!-- populated from slide_config.json --></h2> | |
43 <p data-config-presenter><!-- populated from slide_config.json --></p> | |
44 </hgroup> | |
45 </slide> | |
46 | |
47 <slide> | |
48 <hgroup> | |
49 <h2>研究目的</h2> | |
50 </hgroup> | |
51 <article> | |
52 <ul> | |
53 <li>ブートが高速で、コンパクトなカーネルを実装する。</li> | |
54 <li>Codesegment と Datasegment をカーネルに実装するにあたって、メモリ管理の役割とどう合致するのかを検証する。</li> | |
55 <li>上記を確認したら CbC を用いて、動作が軽く落ちにくいカーネルを実装する。</li> | |
56 </ul> | |
57 </article> | |
58 </slide> | |
59 | |
60 <slide> | |
61 <hgroup> | |
62 <h2>今週の作業</h2> | |
63 </hgroup> | |
64 <article> | |
65 <ul> | |
66 <li>Linux 3.8.9 を読む</li> | |
67 <li>メモリ初期化のデバッグ</li> | |
68 </ul> | |
69 </article> | |
70 </slide> | |
71 | |
72 <slide> | |
73 <hgroup> | |
74 <h2>ELILO</h2> | |
75 </hgroup> | |
76 <article> | |
77 <h3>ELILO の中でのカーネル、という方針</h3> | |
78 <p>「ELILOアプリケーションの中」だったら ExitBootServices を実行しないで書くべき</p> | |
79 <ol> | |
80 <li>GDT/LDT を設定</li> | |
81 <li>別セグメントに飛ぶ</li> | |
82 <li>メモリの初期化</li> | |
83 <li>Call Gate と TSS</li> | |
84 <li>CPL (current privilege level) を調べる</li> | |
85 <li>64 bit mode(32bit と互換性なし)/compatibility mode</li> | |
86 <li>UEFI のマニュアルには<br> | |
87 Paging mode is enabled and any memory space defined by the UEFI memory map is identity mapped (virtual address equals physical address).</li> | |
88 </ol> | |
89 </article> | |
90 </slide> | |
91 | |
92 <slide> | |
93 <hgroup> | |
94 <h2>エラーメッセージ</h2> | |
95 </hgroup> | |
96 <article> | |
97 <h3>cr0 の PE bit を無効にした時</h3> | |
98 <img src='images/err_message01.png'> | |
99 <h3>cr3 に値を入れた時</h3> | |
100 <img src='images/err_message02.png'> | |
101 </article> | |
102 </slide> | |
103 | |
104 <slide> | |
105 <hgroup> | |
106 <h2>Fedora Linux</h2> | |
107 </hgroup> | |
108 <article> | |
109 <ul> | |
110 <li>Linux kernel 3.8.9</li> | |
111 <li>gdb で追いながら追っている途中</li> | |
112 </ul> | |
113 </article> | |
114 </slide> | |
115 | |
116 <slide> | |
117 <hgroup> | |
118 <h2>PostgreSQL</h2> | |
119 </hgroup> | |
120 <article> | |
121 <h3>手順</h3> | |
122 <ol> | |
123 <li>./initdb -D $PGDATA<br> | |
124 データベースの初期化<li> | |
125 <li>./pg_ctl -D $PGDATA -l [logfile_name] start<br> | |
126 PostgreSQL の起動<li> | |
127 <li>./psql user<br> | |
128 対話プロンプトが開く<li> | |
129 <li> | |
130 ps -ef | grep postgres<br> | |
131 PostgreSQL のプロセスを探し出す<li> | |
132 <li>gdb $DIR/bin/postgres [process number]<br> | |
133 で読む<li> | |
134 </ol> | |
135 </article> | |
136 </slide> | |
137 | |
138 | |
139 <slide class="logoslide dark nobackground"> | |
140 <article class="flexbox vcenter"> | |
141 <span><img src="../io2012slides/images/google_developers_logo_white.png"></span> | |
142 </article> | |
143 </slide> | |
144 | |
145 <slide class="backdrop"></slide> | |
146 | |
147 </slides> | |
148 | |
149 <script> | |
150 var _gaq = _gaq || []; | |
151 _gaq.push(['_setAccount', 'UA-XXXXXXXX-1']); | |
152 _gaq.push(['_trackPageview']); | |
153 | |
154 (function() { | |
155 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; | |
156 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; | |
157 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); | |
158 })(); | |
159 </script> | |
160 | |
161 <!--[if IE]> | |
162 <script src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1/CFInstall.min.js"></script> | |
163 <script>CFInstall.check({mode: 'overlay'});</script> | |
164 <![endif]--> | |
165 </body> | |
166 </html> |