update
[fsij-homepage-html.git] / category / monthly-meetings.html
1 <!DOCTYPE html>
2 <html lang="ja">
3 <head>
4         <meta charset="utf-8" />
5         <title>Free Software Initiative of Japan - monthly-meetings</title>
6         <link rel="stylesheet" href="/theme/css/main.css" />
7         <link href="http://www.fsij.org/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Free Software Initiative of Japan Atom Feed" />
8         <link href="http://www.fsij.org/feeds/all_rss.xml" type="application/rss+xml" rel="alternate" title="Free Software Initiative of Japan RSS Feed" />
9
10         <!--[if IE]>
11             <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
12         <![endif]-->
13 </head>
14
15 <body id="index" class="home">
16         <header id="banner" class="body">
17           <h1><a href="/"><img src="/images/FSIJ-s.png" /></a>
18               <p id="h1">Free Software Initiative of Japan</p>
19 <p id="h2">特定非営利活動法人 フリーソフトウェアイニシアティブ</p></h1>
20           <nav><ul>
21               <li><a href="/category/gnuk.html">gnuk</a></li>
22               <li class="active"><a href="/category/monthly-meetings.html">monthly-meetings</a></li>
23               <li><a href="/category/news.html">news</a></li>
24               <li><a href="/category/system.html">system</a></li>
25               <li><a id="ARCHIVE" href="/archives.html">ARCHIVE</a></li>
26           </ul></nav>
27         </header><!-- /#banner -->
28
29         <aside id="page-side"><nav>
30   <ul>
31     <li><a href="/pages/monthly-meetings/join.html">FSIJ 月例会への参加の方法</a></li>
32     <li><a href="/pages/monthly-meetings/misc.html">SEA&amp;FSIJ月例会について</a></li>
33     <li><a href="/pages/monthly-meetings/place.html">FSIJ 月例会の場所</a></li>
34     <li><a href="/feeds/monthly-meetings_rss.xml"><img src=/theme/images/icons/rss.png /></a></li>
35   </ul>
36 </nav></aside> <!-- /#page-side -->
37         <section id="page-main">
38
39             <aside id="featured" class="body">
40                 <article>
41                     <h1 class="entry-title"><a href="/monthly-meetings/2015/Nov.html">11月の技術講座</a></h1>
42 <footer class="post-info">
43   <abbr class="published" title="2015-11-09T00:00:00">
44     2015-11-09
45   </abbr>
46
47 </footer><!-- /.post-info --><div class="section" id="orange-pi-pc">
48 <h2>テーマ: Orange Pi PCを使ってみる</h2>
49 <p>開催日時 2015年11月27日(金曜日)18:30 ~ 19:30</p>
50 <table class="docutils field-list" frame="void" rules="none">
51 <col class="field-name" />
52 <col class="field-body" />
53 <tbody valign="top">
54 <tr class="field"><th class="field-name">場所:</th><td class="field-body">東京体育館第四会議室</td>
55 </tr>
56 </tbody>
57 </table>
58 <p>なお今後の開催日時は以下を予定しています。</p>
59 <ul class="simple">
60 <li>12/11(金曜日) 18:30-19:30</li>
61 </ul>
62 <p>(場所はいずれも東京体育館第四会議室です)</p>
63 </div>
64 <div class="section" id="id2">
65 <h2>概要</h2>
66 <p>9月の月例会でChopstxをCortex-A7に移植するという話が小島さんから発表されました。この会でRaspberry Pi 2は、(目的によっては良い製品ですが)自由ソフトウェア運動の観点では残念ながら、ブートローダ、(カーネルやブートローダを作るに必要な)技術情報、一部の必須のドライバの点において「プロプライエタリ・プラットフォーム」と言わざるをえない、と論議されました。</p>
67 <p>関連して、FSIJでは、かつてKurobox/ProのCPUのバグを突き止めたり、玄柴の配布を発売当時(主に会員に)斡旋したりしてきました。最近ではwandboardとFreescaleのCPUはいいのではないか、と議論しています。</p>
68 <p>今回はCortex-A7ということでハードルが高いのですが、Orange Pi PCとAllwinner H3が、完璧からは程遠いですが、比較優位として、まぁマシなプラットフォームでしょう、という話をします。</p>
69 <p>JTAG debuggerをつないで4つのコアをデバッグしてみる、また、間に合えば、Chopstxを動かすデモが見られるでしょう。</p>
70 </div>
71 <div class="section" id="id3">
72 <h2>話題提供</h2>
73 <ul class="simple">
74 <li>g新部 裕</li>
75 </ul>
76 <!-- BREAK -->
77 </div>
78 <div class="section" id="id4">
79 <h2>まだ充分ではなく残念な点</h2>
80 <ul class="simple">
81 <li>Allwinner H3の技術情報開示は必ずしも充分ではない。<ul>
82 <li>linux-sunxi.org に解明された情報、マニュアルなどはある。</li>
83 <li>u-bootのsource codeがある。</li>
84 <li>Linux 3.4のsource codeがある。</li>
85 <li>bootの仕組みも(必ずしもベンダから積極的に開示されているわけではないが)解明されている。</li>
86 </ul>
87 </li>
88 <li>回路図の取得にはユーザ登録が必要。</li>
89 <li>Allwinner H3のMMCのハードウェアは高速な転送モード(UHS)をサポートしていない模様。</li>
90 </ul>
91 </div>
92 <div class="section" id="id5">
93 <h2>良い点</h2>
94 <ul class="simple">
95 <li>www.orangepi.org からたどると有用な情報にたどり着ける。</li>
96 <li>上記から、すぐ使える u-boot, Linux kernel, Debian のimageが提供されている。</li>
97 <li>JTAG debuggerをつなげて動かすことができる。</li>
98 <li>Allwinnerからは(他の半導体ベンダのように)意地悪をするという感じはない。</li>
99 </ul>
100 </div>
101 <div class="section" id="id6">
102 <h2>注意点</h2>
103 <ul class="simple">
104 <li>Cortex-M3などを使っていると半導体ベンダからのマニュアルにドライバを書くのに充分な情報とサンプルコードが提供される、と思いがち。</li>
105 <li>Cortex-A7のSoCでは、それは期待しても無駄。u-boot, Linux kernelがsourceであれば御の字。マニュアルは詳細は記述されずレジスタのアドレスと概念図程度である(それでもあればマシ)。</li>
106 <li>Cortex-M3などを使っているとJTAG debuggerは当たり前と考えるが、そもそもCortex-A7のSoCではデフォルトで使えなくなっているものもある。</li>
107 <li>Cortex-A7(など)のSoCでは、ベンダ(の周辺)がブートローダ、カーネルなどを提供するからユーザは黙って使えという向きもある。ユーザが別のカーネルを用意することは前提とされてなかったり。</li>
108 </ul>
109 </div>
110 <div class="section" id="orange-pi-pcjtag">
111 <h2>Orange Pi PCのJTAG接続</h2>
112 <p>手持ちのOlimexのARM-USB-TINYをつないでOpenOCD 0.9.0で動きました。</p>
113 <p>Allwinner H3の設定で PA0, PA1, PA2, PA3をJTAGに使う(デフォルトはMMCと重なっている)。
114 PA0:JTAG_MS, PA1:JTAG_CK, PA2:JTAG_DO, PA3:JTAG_DI の役割。</p>
115 <p>接続は下記のとおり。</p>
116 <pre class="literal-block">
117 Orange Pi PC extention pins
118
119 Vcc3V3    1 2
120           3 4
121           5 6
122           7 8
123 GND       9 10
124 JTAG_CK  11 12
125 JTAG_MS  13 14
126 JTAG_DI  15 16
127          17 18
128          19 20
129          21 22 JTAG_DO
130          ...
131
132 ARM-USB-TINY pins
133
134            1 2  Vapp
135            3 4  GND
136 Target DI  5 6
137 JTAG_MS    7 8
138 JTAG_CK    9 10
139           11 12
140 Target DO 13 14
141           ...
142 </pre>
143 <p>接続の様子。</p>
144 <a class="reference external image-reference" href="/images/monthly-meetings/2015/orange-pi-pc.jpg"><img alt="Orange Pi PC with ARM-USB-TINY" src="/images/monthly-meetings/2015/orange-pi-pc.jpg" style="width: 320px;" /></a>
145 <p>scriptは sun8iw7.cfg として下記のとおり:</p>
146 <pre class="literal-block">
147 # Orange Pi PC
148
149 telnet_port 4444
150 gdb_port 3333
151
152 adapter_khz 300
153
154 if { [info exists CHIPNAME] } {
155    set  _CHIPNAME $CHIPNAME
156 } else {
157    set  _CHIPNAME sun8iw7
158 }
159
160 if { [info exists DAP_TAPID] } {
161     set _DAP_TAPID $DAP_TAPID
162 } else {
163     set _DAP_TAPID 0x5ba00477
164 }
165
166 jtag newtap $_CHIPNAME dap -expected-id $_DAP_TAPID -irlen 4 -ircapture 0x01 -irmask 0x0f
167
168 set _TARGETNAME0 $_CHIPNAME.cpu0
169 set _TARGETNAME1 $_CHIPNAME.cpu1
170 set _TARGETNAME2 $_CHIPNAME.cpu2
171 set _TARGETNAME3 $_CHIPNAME.cpu3
172
173 target create $_TARGETNAME0 cortex_a -chain-position $_CHIPNAME.dap -coreid 0
174 target create $_TARGETNAME1 cortex_a -chain-position $_CHIPNAME.dap -coreid 1
175 target create $_TARGETNAME2 cortex_a -chain-position $_CHIPNAME.dap -coreid 2
176 target create $_TARGETNAME3 cortex_a -chain-position $_CHIPNAME.dap -coreid 3
177 target smp $_TARGETNAME0 $_TARGETNAME1 $_TARGETNAME2 $_TARGETNAME3
178
179 $_TARGETNAME0 configure -event gdb-attach {
180     cortex_a dbginit
181 }
182 $_TARGETNAME1 configure -event gdb-attach {
183     cortex_a dbginit
184 }
185 $_TARGETNAME2 configure -event gdb-attach {
186     cortex_a dbginit
187 }
188 $_TARGETNAME3 configure -event gdb-attach {
189     cortex_a dbginit
190 }
191 </pre>
192 <p>コマンド起動は、こうします。</p>
193 <pre class="literal-block">
194 $ openocd -f interface/ftdi/olimex-jtag-tiny.cfg -f sun8iw7.cfg
195 </pre>
196 </div>
197                 </article>
198             </aside><!-- /#featured -->
199                 <section id="content" class="body">
200                     <h1>Other articles</h1>
201                     <hr />
202                     <ol id="posts-list" class="hfeed">
203
204             <li><article class="hentry">
205                 <header>
206                     <h1><a href="/monthly-meetings/2015/Oct.html" rel="bookmark"
207                            title="Permalink to 10月の技術講座">10月の技術講座</a></h1>
208                 </header>
209
210                 <div class="entry-content">
211 <footer class="post-info">
212   <abbr class="published" title="2015-10-13T00:00:00">
213     2015-10-13
214   </abbr>
215
216 </footer><!-- /.post-info -->                <div class="section" id="iotshodan">
217 <h2>テーマ: IoT時代のセキュリティとSHODAN</h2>
218 <p>開催日時 2015年10月16日(金曜日)18:30 ~ 19:30</p>
219 <table class="docutils field-list" frame="void" rules="none">
220 <col class="field-name" />
221 <col class="field-body" />
222 <tbody valign="top">
223 <tr class="field"><th class="field-name">場所:</th><td class="field-body">東京体育館第四会議室</td>
224 </tr>
225 </tbody>
226 </table>
227 <p>なお今後の開催日時は以下を予定しています。</p>
228 <ul class="simple">
229 <li>11/27(金曜日) 18:30-19:30</li>
230 <li>12/11(金曜日) 18:30-19:30</li>
231 </ul>
232 <p>(場所はいずれも東京体育館第四会議室です)</p>
233 </div>
234 <div class="section" id="id2">
235 <h2>概要</h2>
236 <p>「モノ」がすべてインターネットに接続し,すべての情報がインターネットを経由してやりとりされる IoT (Internet of Things) の時代が既に始まっています.そこでのセキュリティに関しては何かをしなくてはいけないと漠然とした議論はされていますが,現実の脅威はまだまだ先のように思われています.しかし現実には,現在すでにインターネットに接続されているたくさんの「モノ」が脅威にされています.</p>
237 <p>IoT のセキュリティが現実のものとなっていることを理解するために,今回はインターネット上のコンピュータを探すサービスを提供している SHODANを紹介し,いくつかのケーススタディを行うことで,みなさんと IoT のセキュリティを考えます.</p>
238 </div>
239 <div class="section" id="id3">
240 <h2>話題提供</h2>
241 <ul class="simple">
242 <li>鈴木 ...</li></ul></div>
243                 <a class="readmore" href="/monthly-meetings/2015/Oct.html">read more</a>
244                 </div><!-- /.entry-content -->
245             </article></li>
246
247             <li><article class="hentry">
248                 <header>
249                     <h1><a href="/monthly-meetings/2015/Sep.html" rel="bookmark"
250                            title="Permalink to 9月の技術講座">9月の技術講座</a></h1>
251                 </header>
252
253                 <div class="entry-content">
254 <footer class="post-info">
255   <abbr class="published" title="2015-08-25T00:00:00">
256     2015-08-25
257   </abbr>
258
259 </footer><!-- /.post-info -->                <div class="section" id="chopstx-on-raspberry-pi-2">
260 <h2>テーマ: Chopstx on Raspberry Pi 2</h2>
261 <p>開催日時 2015年9月25日(金曜日)18:30 ~ 19:30</p>
262 <table class="docutils field-list" frame="void" rules="none">
263 <col class="field-name" />
264 <col class="field-body" />
265 <tbody valign="top">
266 <tr class="field"><th class="field-name">場所:</th><td class="field-body">東京体育館第四会議室</td>
267 </tr>
268 </tbody>
269 </table>
270 <p>なお今後の開催日時は以下を予定しています。</p>
271 <ul class="simple">
272 <li>10/16(金曜日) 18:30-19:30</li>
273 <li>11/27(金曜日) 18:30-19:30</li>
274 <li>12/11(金曜日) 18:30-19:30</li>
275 </ul>
276 <p>(場所はいずれも東京体育館第四会議室です)</p>
277 </div>
278 <div class="section" id="id2">
279 <h2>概要</h2>
280 <p>Chopstxはg新部さんの手になるARM Cortex-M3/M0用のリアルタイムスレッドライブラリでGnukやNeugで使われています。
281 ChopstxをCortex-A7をCPUにもつRaspberry Pi 2ボードにポートしようとしておきた顛末をご紹介します。</p>
282 </div>
283 <div class="section" id="id3">
284 <h2>話題提供</h2>
285 <ul class="simple">
286 <li>小島 一元</li>
287 </ul>
288 </div>
289
290                 <a class="readmore" href="/monthly-meetings/2015/Sep.html">read more</a>
291                 </div><!-- /.entry-content -->
292             </article></li>
293
294             <li><article class="hentry">
295                 <header>
296                     <h1><a href="/monthly-meetings/2015/Jun.html" rel="bookmark"
297                            title="Permalink to 6月の技術講座">6月の技術講座</a></h1>
298                 </header>
299
300                 <div class="entry-content">
301 <footer class="post-info">
302   <abbr class="published" title="2015-05-27T00:00:00">
303     2015-05-27
304   </abbr>
305
306 </footer><!-- /.post-info -->                <div class="section" id="gcc-gnu-compiler-collection">
307 <h2>テーマ: GCC (GNU Compiler Collection)について</h2>
308 <p>開催日時 2015年6月13日(土曜日)18:10 〜 18:45</p>
309 <table class="docutils field-list" frame="void" rules="none">
310 <col class="field-name" />
311 <col class="field-body" />
312 <tbody valign="top">
313 <tr class="field"><th class="field-name">場所:</th><td class="field-body">東京体育館第四会議室</td>
314 </tr>
315 <tr class="field"><th class="field-name">注意:</th><td class="field-body">FSIJ総会の後で、いつもと曜日と時間帯が異なります。</td>
316 </tr>
317 </tbody>
318 </table>
319 </div>
320 <div class="section" id="id2">
321 <h2>概要</h2>
322 <p>GCC 5.1が4月末にリリースされました。 5.1で加わった機能やプロジェクトの現状、その他あれこれについてその概要を紹介します。</p>
323 </div>
324 <div class="section" id="id3">
325 <h2>話題提供</h2>
326 <ul class="simple">
327 <li>小島 一元</li>
328 </ul>
329 </div>
330
331                 <a class="readmore" href="/monthly-meetings/2015/Jun.html">read more</a>
332                 </div><!-- /.entry-content -->
333             </article></li>
334
335             <li><article class="hentry">
336                 <header>
337                     <h1><a href="/monthly-meetings/2015/May.html" rel="bookmark"
338                            title="Permalink to 5月の技術講座">5月の技術講座</a></h1>
339                 </header>
340
341                 <div class="entry-content">
342 <footer class="post-info">
343   <abbr class="published" title="2015-05-09T00:00:00">
344     2015-05-09
345   </abbr>
346
347 </footer><!-- /.post-info -->                <div class="section" id="pelicangit">
348 <h2>テーマ: Pelicanを使ってGitで管理するホームページ</h2>
349 <p>開催日時 2015年5月25日(月曜日)18:30 〜 19:30</p>
350 <table class="docutils field-list" frame="void" rules="none">
351 <col class="field-name" />
352 <col class="field-body" />
353 <tbody valign="top">
354 <tr class="field"><th class="field-name">場所:</th><td class="field-body">東京体育館第四会議室</td>
355 </tr>
356 </tbody>
357 </table>
358 </div>
359 <div class="section" id="id2">
360 <h2>概要</h2>
361 <p>FSIJのホームページで使っている <a class="reference external" href="http://blog.getpelican.com/">Pelican</a> を解説し、運用を説明します。</p>
362 <p>FSIJのホームページは2009年よりreStructuredTextをソースとして生成されています
363 (それ以前はTrac, Zope, wml を使ったりしていました)。</p>
364 <p>2014年にサーバを移行するにあたり、 <a class="reference external" href="http://blog.getpelican.com/">Pelican</a> を使うように再構築し、HTMLおよびソースは <a class="reference external" href="http://git.fsij.org/gitweb/">Gitリポジトリ</a> で管理されています。</p>
365 <p>このようにすることで、以下の利点が達成されています。</p>
366 <ul class="simple">
367 <li>複数人による(場合によってはオフライン作業での)編集と管理を可能とする。</li>
368 <li>運用しているサーバではなく、手元ローカルに確認できる。</li>
369 <li>複数人でGitリポジトリを運用することは自動的にバックアップとなる。</li>
370 <li>異なるサーバでサービスすることを容易にし、万が一のときに対応できる。</li>
371 <li>環境に左右されにくい内容のテクストのソースを維持管理する。</li>
372 <li>(移り気な最近の)Webの技術に対応する。</li>
373 <li>訪問者の自由なコンピューティングを阻害しがちなWebの技術を避けられる。</li>
374 <li>訪問者のプライバシをないがしろにしがちなWebの技術を避けられる。</li>
375 </ul>
376 <div class="section" id="id3">
377 <h3>参加の準備</h3>
378 <p>手元にホームページのソースのコピーを持つ:</p>
379 <pre class="literal-block">
380 $ git clone git://git.fsij.org ...</pre></div></div>
381                 <a class="readmore" href="/monthly-meetings/2015/May.html">read more</a>
382                 </div><!-- /.entry-content -->
383             </article></li>
384             </ol><!-- /#posts-list -->
385 <p class="paginator">
386     Page 1 / 13
387         <a href="http://www.fsij.org/category/monthly-meetings2.html">&raquo;</a>
388 </p>
389             </section><!-- /#content -->
390         </section>
391         <section id="extras" class="body">
392         </section><!-- /#extras -->
393
394         <footer id="contentinfo" class="body">
395           <address id="about" class="vcard body">
396             Powered by <a href="http://getpelican.com/">Pelican</a> with <a href="http://python.org">Python</a>.
397           </address><!-- /#about -->
398
399           <p>Source is available at a <a href="http://git.fsij.org/">Git repository</a>.</p>
400         </footer><!-- /#contentinfo -->
401
402 </body>
403 </html>