memo0007
の編集
http://osecpu.osask.jp/wiki/?memo0007
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
BracketName
FormattingRules
FrontPage
Fulyn
Fulyn-v2
Fulyn_Samples
Help
InterWiki
InterWikiName
InterWikiSandBox
K
KOR_PIT8254
KWVM.NET
Liva
MANA
MenuBar
OSECPU_FPGA
PG_MANA
PHP
PukiWiki
PukiWiki/1.4
PukiWiki/1.4/Manual
PukiWiki/1.4/Manual/Plugin
PukiWiki/1.4/Manual/Plugin/A-D
PukiWiki/1.4/Manual/Plugin/E-G
PukiWiki/1.4/Manual/Plugin/H-K
PukiWiki/1.4/Manual/Plugin/L-N
PukiWiki/1.4/Manual/Plugin/O-R
PukiWiki/1.4/Manual/Plugin/S-U
PukiWiki/1.4/Manual/Plugin/V-Z
RecentDeleted
SandBox
WikiEngines
WikiName
WikiWikiWeb
YukiWiki
hikalium
hikarupsp
hikarupsp_ELCHNOS
hikarupsp_ELCHNOS_IDE
hikarupsp_FrontEndCode
hikarupsp_WebCPU-VM
hikarupsp_WebCPU-VM_internal
hikarupsp_study_hh4
impressions
impressions0000
jpag0000
jpag0001
jpag0002
jpag0003
jpag0004
jpag0005
lambdalice
mandel59
members
memo0000
memo0001
memo0002
memo0003
memo0004
memo0005
memo0006
memo0007
memo0008
memo0009
memo0010
osask
osecpu4android
page0000
page0001
page0002
page0003
page0004
page0005
page0006
page0007
page0008
page0009
page0010
page0011
page0012
page0013
page0014
page0015
page0016
page0017
page0018
page0019
page0020
page0021
page0022
page0023
page0024
page0025
page0026
page0027
page0028
page0029
page0030
page0031
page0032
page0033
page0034
page0035
page0036
page0037
page0038
page0039
page0040
page0041
page0042
page0043
page0044
page0045
page0046
page0047
page0048
page0049
page0050
page0051
page0052
page0053
page0054
page0055
page0056
page0057
page0058
page0059
page0060
page0061
page0062
page0063
page0064
page0065
page0066
page0067
page0068
page0069
page0070
page0071
page0072
page0073
page0074
page0075
page0076
page0077
page0078
page0079
page0080
page0081
page0082
page0083
page0084
page0085
page0086
page0087
page0088
page0089
page0090
page0091
page0092
page0093
page0094
page0095
page0096
page0097
page0098
page0099
page0100
page0101
page0102
page0103
page0104
page0105
page0106
page0107
page0108
page0109
pagenames
populars
seccamp2013
seccamp2014
seccamp2017
ttwilb
ttwilb-asmi
yao
* Kの開発メモ #0007 -(by [[K]], 2013.09.21) -ここは川合の開発の進捗などをレポートするところです。 ** 2013.09.02 Mon -rev2([[page0068]], [[page0067]])に向けて少しずつ作業中(キャンプが終わったので開発ペースはかなり下がっています、すみません)。 ** 2013.09.06 Fri -OSECPUの何がすごいって、以下の3つを僕が一人でそろえたことだと思う。別に僕じゃなくてもいいんだけど、とにかく一人でやったので、方針が一貫している。 --VM(osecpu.c):シンプルだけど必要な機能が一通りそろっている、しかもセキュア --専用アセンブラ:アセンブラだけどC言語風に書けるので、普通のアセンブラよりは大規模な開発に向いている --フロントエンドコード体系:世界最高の機能密度を達成 -これを半年でやったのも僕としてはすごい。しかしこれは半年でできたことがすごいというよりは、半年という枠が最初にあって、その中でできることをやっただけという感じだけど。 -ASKAの存在を軽く見ることはできるけれど、もしこれが無かったらオセロやテキストエディタをアセンブラで(=レジスタや命令長を意識して)作る気になれただろうか。だからASKAは機能密度の向上に大きく貢献していると思う。 ** 2013.09.14 Sat -今日の成果: --http://osecpu.osask.jp/download/osecpu076d.zip --このアーカイブにはext_tols/がないので、osecpu064a.zipからコピーしてください。 --アプリの機能密度向上 --syslib.oseの型推論に関するバグを修正しました(thanks: yaoさん) -kemecoさんからの指摘: #include "osecpu_ask.h" junkApi_malloc(P01, T_SINT32, 4096); LIMM(R01, 128); PADD(P02, T_SINT32, P01, R01); PADD(P02, T_SINT32, P01, R01); --こう書くとうまく行かないそうなんだけど、とりあえずver.0.76で試したら問題なさそうでした。ということでこの件は保留。 ** 2013.09.18 Wed -今日の成果: --http://osecpu.osask.jp/download/osecpu077d.zip --このアーカイブにはext_tols/がないので、osecpu064a.zipからコピーしてください。 --osecpu.exeのPLMEMに関するバグを修正しました(thanks: yaoさん)。 --osectols.exeの関数ラベルに関するバグを修正しました(thanks: yaoさん)。 -近況: --osecpu-basicはBASICな文法からC言語風の文法に徐々に変わって、ついに300コミットを超えました。すごい! --kemecoさんもテトリスを作り始めているようです。 ---https://gist.github.com/takeutch-kemeco/6607046 ---kemecoさんも、というのは、実は僕もIrisさんも作っていたからです。Irisさんのものはそのうちまたアーカイブに同梱しようと思います。 ---僕の分は実はosecpu076dに既に入っていて、app0089.tk5です。 ---みんなで作って遊ぶのは面白い! ** 2013.09.19 Thu -kemecoさんのテトリスでは、関数呼び出しの際のリターンアドレスがP30以外になっていて、「さすがはコンパイラ作者だなあ」と思いました。おもしろい。 ** 2013.09.20 Fri -Brainfuckのインタプリタは、107バイトまでしか行かない!98バイトはDOSの.COMファイルっぽいのですが、これは手ごわい! --と思ったら98バイト版はソースをファイルから読まないのかー。僕のはもちろん指定したファイルを読み込みます。 --ファイルから読むバージョンを探したら138バイトでした。余裕の勝利! --でもこのDOS版のプログラム、ファイルのクローズを省略すれば134バイトにはできそうだな・・・。それでもOSECPU版の勝ちだけど。 ** 2013.09.30 Mon -10月になったら、リリース版を更新したいです。 -yaoさんがLispのドキュメントを書いてくれたので感想も書きたいです。 ** 2013.10.11 Fri -会社の仕事が忙しくてなかなかこっちに取り組めないでいます。っていうか、これが普通の社会人ですよね。 -さて、yaoさんのドキュメントを読んだ感想を書きたいと思います。せっかく書いてくれたのに、遅くなってごめんなさい。 --https://github.com/yuta-aoyagi/osecpu-lisp/blob/master/tutorial.md --LISPにS式とかアトムとかいうものがあって、それをいろいろ操作できそうだなということは僕でも理解できたのですが、そこから先が分かりません。 --なんというか、例えばchars(app0036)みたいなアプリを作るにはどうしたらいいのか。もしくはapp0006みたいなものはどうやったら作れるのか。 --たぶん今のバージョンは数値演算をサポートしてはいないのですよね。だから仮にputchar()やdrawPoint()がサポートされたとしても、何をどうしたらいいのかまだわかりません。 --なんか文句ばかり書いてしまいましたが、本音は、文句というよりも今後に超期待という感じです。よろしくお願いします!>yaoさん ** 2013.10.18 Wed -今日の成果: --http://osecpu.osask.jp/download/osecpu078d.zip --このアーカイブにはext_tols/がないので、osecpu064a.zipからコピーしてください。 --Irisさんのかっこいいテトリスをアーカイブに追加しました(thanks: Irisさん)。 ** 2013.10.19 Sat -OSC一日目: --OSASKやっぱすごいといってもらえた。 ---http://movapic.com/pic/2013101915594552622de1c934a --yaoさんがtwitterで遊びに来てくれそうな感じだったけど、結局会えませんでした。 ---私の長すぎる休憩のせいかなと心配したら、寝過ごしたそうです。それならしょうがない! --mandel59さんがOSECPUの資料をていねいに読んでくれていました。 --2014春のときは、もっとブースを広くしよう。隣接希望でセキュリティキャンプブースを作ろうと思う。そうすれば2ブースになる。 ** 2013.12.24 Tue -まだ1024バイトコンテストの集計をやってない・・・すみません! -今日は、kemecoさんのtwitterの書き込みがおもしろかったので、そこから話をあれこれ書こうと思います。 -kemecoさんはLinux用のOSECPU-VMでキー入力まわりをどうするか悩んでいて、/dev/input/を使う方法だと詳細な情報がとれるが、副作用として他のアプリへのキー入力も取得できてしまって、それはつまりキーロガーを作れてしまうことなので、これはOSECPU-VMの目指すセキュアとは相容れないのではないかと書かれています。 -詳細が分かってないので的はずれかもしれませんが、この件に関してあれこれ考察したいと思います。 -まず、OSECPU-VMがシステムのいろいろな情報にアクセスできてしまう、他のアプリの情報が見えてしまう、このことそのものは問題ではありません。でもOSECPUアプリには見せてはいけません。つまりVMはそれらの情報がユーザの知らないうちにアプリに渡されてしまうことがないようにブロックしなければいけません。 --ユーザがシステム上の重要な情報をファイルに書き込んでおいて、それをあえてOSECPUアプリに渡すのなら、それはユーザがそうしたくてやっているので、OSECPU-VMの落ち度ではないです。 -次に、OSECPU-VMを使うと、簡単にハッキングツールが作れてしまうという状況について考えてみます。これは今回の件とは無関係ですが、ふと思いついた物です。 -これはちっともまずくありません。むしろOSECPU-VMは優秀です。セキュリティホールがあるから攻撃されるのです。OSECPU-VM以外の物にセキュリティホールがあるのは、OSECPU-VMのせいではないのです。攻撃しやすくなってしまうのは、OSECPUが便利だからです。僕はそう考えます。 -一方で、OSECPU-VMを動かすためにOSのセキュリティ設定を緩める必要がある、みたいな状況はどうでしょうか?これも今回の件とは無関係の思いつきです。 -これはよろしくないですね。それならAltの左右が区別できず、どちらで入力しても左Altと認識されてしまう、みたいな制限事項のほうがマシです。OSがアプリに対してこれらをうまく扱えないのがいけないのです。OSECPU-VMのせいじゃないです。僕はそう思います。 -僕が実現したい「セキュリティ」は、OSECPUアプリを使っている限り、システムは絶対に破壊されないし、システムが落ちたりすることもないし、情報は盗まれない、というものです。この理想を実現するのはVMの役目なので、VMは悪意あるアプリからシステムを守らないといけません。だからVMがシステムを破壊するかもしれない能力を持ち、情報を盗むかもしれない能力を持つことは問題ではないです。でもアプリにやらせてはいけません。 ** 2014.03.14 Fri -今年の予定。 -基本的にセキュリティキャンプがないと、時間がほとんど確保できないので、本格始動は5月くらいからです。 * こめんと欄 #comment
タイムスタンプを変更しない
* Kの開発メモ #0007 -(by [[K]], 2013.09.21) -ここは川合の開発の進捗などをレポートするところです。 ** 2013.09.02 Mon -rev2([[page0068]], [[page0067]])に向けて少しずつ作業中(キャンプが終わったので開発ペースはかなり下がっています、すみません)。 ** 2013.09.06 Fri -OSECPUの何がすごいって、以下の3つを僕が一人でそろえたことだと思う。別に僕じゃなくてもいいんだけど、とにかく一人でやったので、方針が一貫している。 --VM(osecpu.c):シンプルだけど必要な機能が一通りそろっている、しかもセキュア --専用アセンブラ:アセンブラだけどC言語風に書けるので、普通のアセンブラよりは大規模な開発に向いている --フロントエンドコード体系:世界最高の機能密度を達成 -これを半年でやったのも僕としてはすごい。しかしこれは半年でできたことがすごいというよりは、半年という枠が最初にあって、その中でできることをやっただけという感じだけど。 -ASKAの存在を軽く見ることはできるけれど、もしこれが無かったらオセロやテキストエディタをアセンブラで(=レジスタや命令長を意識して)作る気になれただろうか。だからASKAは機能密度の向上に大きく貢献していると思う。 ** 2013.09.14 Sat -今日の成果: --http://osecpu.osask.jp/download/osecpu076d.zip --このアーカイブにはext_tols/がないので、osecpu064a.zipからコピーしてください。 --アプリの機能密度向上 --syslib.oseの型推論に関するバグを修正しました(thanks: yaoさん) -kemecoさんからの指摘: #include "osecpu_ask.h" junkApi_malloc(P01, T_SINT32, 4096); LIMM(R01, 128); PADD(P02, T_SINT32, P01, R01); PADD(P02, T_SINT32, P01, R01); --こう書くとうまく行かないそうなんだけど、とりあえずver.0.76で試したら問題なさそうでした。ということでこの件は保留。 ** 2013.09.18 Wed -今日の成果: --http://osecpu.osask.jp/download/osecpu077d.zip --このアーカイブにはext_tols/がないので、osecpu064a.zipからコピーしてください。 --osecpu.exeのPLMEMに関するバグを修正しました(thanks: yaoさん)。 --osectols.exeの関数ラベルに関するバグを修正しました(thanks: yaoさん)。 -近況: --osecpu-basicはBASICな文法からC言語風の文法に徐々に変わって、ついに300コミットを超えました。すごい! --kemecoさんもテトリスを作り始めているようです。 ---https://gist.github.com/takeutch-kemeco/6607046 ---kemecoさんも、というのは、実は僕もIrisさんも作っていたからです。Irisさんのものはそのうちまたアーカイブに同梱しようと思います。 ---僕の分は実はosecpu076dに既に入っていて、app0089.tk5です。 ---みんなで作って遊ぶのは面白い! ** 2013.09.19 Thu -kemecoさんのテトリスでは、関数呼び出しの際のリターンアドレスがP30以外になっていて、「さすがはコンパイラ作者だなあ」と思いました。おもしろい。 ** 2013.09.20 Fri -Brainfuckのインタプリタは、107バイトまでしか行かない!98バイトはDOSの.COMファイルっぽいのですが、これは手ごわい! --と思ったら98バイト版はソースをファイルから読まないのかー。僕のはもちろん指定したファイルを読み込みます。 --ファイルから読むバージョンを探したら138バイトでした。余裕の勝利! --でもこのDOS版のプログラム、ファイルのクローズを省略すれば134バイトにはできそうだな・・・。それでもOSECPU版の勝ちだけど。 ** 2013.09.30 Mon -10月になったら、リリース版を更新したいです。 -yaoさんがLispのドキュメントを書いてくれたので感想も書きたいです。 ** 2013.10.11 Fri -会社の仕事が忙しくてなかなかこっちに取り組めないでいます。っていうか、これが普通の社会人ですよね。 -さて、yaoさんのドキュメントを読んだ感想を書きたいと思います。せっかく書いてくれたのに、遅くなってごめんなさい。 --https://github.com/yuta-aoyagi/osecpu-lisp/blob/master/tutorial.md --LISPにS式とかアトムとかいうものがあって、それをいろいろ操作できそうだなということは僕でも理解できたのですが、そこから先が分かりません。 --なんというか、例えばchars(app0036)みたいなアプリを作るにはどうしたらいいのか。もしくはapp0006みたいなものはどうやったら作れるのか。 --たぶん今のバージョンは数値演算をサポートしてはいないのですよね。だから仮にputchar()やdrawPoint()がサポートされたとしても、何をどうしたらいいのかまだわかりません。 --なんか文句ばかり書いてしまいましたが、本音は、文句というよりも今後に超期待という感じです。よろしくお願いします!>yaoさん ** 2013.10.18 Wed -今日の成果: --http://osecpu.osask.jp/download/osecpu078d.zip --このアーカイブにはext_tols/がないので、osecpu064a.zipからコピーしてください。 --Irisさんのかっこいいテトリスをアーカイブに追加しました(thanks: Irisさん)。 ** 2013.10.19 Sat -OSC一日目: --OSASKやっぱすごいといってもらえた。 ---http://movapic.com/pic/2013101915594552622de1c934a --yaoさんがtwitterで遊びに来てくれそうな感じだったけど、結局会えませんでした。 ---私の長すぎる休憩のせいかなと心配したら、寝過ごしたそうです。それならしょうがない! --mandel59さんがOSECPUの資料をていねいに読んでくれていました。 --2014春のときは、もっとブースを広くしよう。隣接希望でセキュリティキャンプブースを作ろうと思う。そうすれば2ブースになる。 ** 2013.12.24 Tue -まだ1024バイトコンテストの集計をやってない・・・すみません! -今日は、kemecoさんのtwitterの書き込みがおもしろかったので、そこから話をあれこれ書こうと思います。 -kemecoさんはLinux用のOSECPU-VMでキー入力まわりをどうするか悩んでいて、/dev/input/を使う方法だと詳細な情報がとれるが、副作用として他のアプリへのキー入力も取得できてしまって、それはつまりキーロガーを作れてしまうことなので、これはOSECPU-VMの目指すセキュアとは相容れないのではないかと書かれています。 -詳細が分かってないので的はずれかもしれませんが、この件に関してあれこれ考察したいと思います。 -まず、OSECPU-VMがシステムのいろいろな情報にアクセスできてしまう、他のアプリの情報が見えてしまう、このことそのものは問題ではありません。でもOSECPUアプリには見せてはいけません。つまりVMはそれらの情報がユーザの知らないうちにアプリに渡されてしまうことがないようにブロックしなければいけません。 --ユーザがシステム上の重要な情報をファイルに書き込んでおいて、それをあえてOSECPUアプリに渡すのなら、それはユーザがそうしたくてやっているので、OSECPU-VMの落ち度ではないです。 -次に、OSECPU-VMを使うと、簡単にハッキングツールが作れてしまうという状況について考えてみます。これは今回の件とは無関係ですが、ふと思いついた物です。 -これはちっともまずくありません。むしろOSECPU-VMは優秀です。セキュリティホールがあるから攻撃されるのです。OSECPU-VM以外の物にセキュリティホールがあるのは、OSECPU-VMのせいではないのです。攻撃しやすくなってしまうのは、OSECPUが便利だからです。僕はそう考えます。 -一方で、OSECPU-VMを動かすためにOSのセキュリティ設定を緩める必要がある、みたいな状況はどうでしょうか?これも今回の件とは無関係の思いつきです。 -これはよろしくないですね。それならAltの左右が区別できず、どちらで入力しても左Altと認識されてしまう、みたいな制限事項のほうがマシです。OSがアプリに対してこれらをうまく扱えないのがいけないのです。OSECPU-VMのせいじゃないです。僕はそう思います。 -僕が実現したい「セキュリティ」は、OSECPUアプリを使っている限り、システムは絶対に破壊されないし、システムが落ちたりすることもないし、情報は盗まれない、というものです。この理想を実現するのはVMの役目なので、VMは悪意あるアプリからシステムを守らないといけません。だからVMがシステムを破壊するかもしれない能力を持ち、情報を盗むかもしれない能力を持つことは問題ではないです。でもアプリにやらせてはいけません。 ** 2014.03.14 Fri -今年の予定。 -基本的にセキュリティキャンプがないと、時間がほとんど確保できないので、本格始動は5月くらいからです。 * こめんと欄 #comment
テキスト整形のルールを表示する