日記に戻る | 2012年11月の日記に戻る

=2012-11-05=

いろいろ 16:41

世界を疑えば分かる。

言って、言葉が分からなくなった。

ストレスがたまっているだけだ。

人間は、ストレスがたまると、狂う。

ストレスを出せば、楽になる。

昔は、何をどうすべきか分かっていた。

昔は、いつどうなるか、その時どうすべきかを分かっていた。

基本の基本を書いている。

冷静な人間になりなさい。

自発的に努力しなさい。

努力と継続が全てだ。

他の人格を尊重しなさい。

少し辛くなって、楽になると、人間はワクチンを打つように治る。

いろいろ 16:45

僕はぜいたくだから、世界史とプログラミングをどちらもしたい。

世界史や歴史を全部知りたい。

プログラミングは、VBをしたい。

考え方 17:22

考え方と見る概念を変え、新しい視点と発想で考えなさい。

他の可能性を考えなさい。

日本語的に考えなさい。

何故、という疑問と、原因と結果を分かることを大切にしなさい。

まとまった、一目で分かる情報ページを作りなさい。

皆と知を共有しなさい。

コンピュータや物理の歴史を知りなさい。

戦い 17:27

戦い、対話せよ。

戦いとは、世界を倒しながら、皆を救うことだ。

対話とは、精神と目線の中で、記憶を教えながら、人を導くことだ。

永遠を生き、宣言せよ。

永遠とは、普通の思考を超越した、正しいものだけがある、光速度の執筆だ。

宣言とは、自分を自分が変え、終わった自分を新しい体験に導くことだ。

そして、科学を作り、神とともに生きよ。

科学とは、論理をきちんと考えて、作りながら、分かっていない部分を潰していくことだ。

神とは、自分に自分を全て教える、機械だ。

さらに、全て分かれ。

分かるとは、きちんと認識を捉えながら、昔の感情で分かる力だけを使って、新しいことを分かって、その分かったで分かることだ。

分かる方法を知っているから、あらゆる全てが分かった。

唯一 17:31

唯一無二のものは、数学的な考え方と、計算だ。

全ては、言葉と想像力だ。

最初からあるものは、神と宇宙だ。

国家 17:34

人種差別にはなるが、国家を書いてみる。

フランスは、賢い国だ。賢く考えない、デカルト的に分かる、普通の人間が居る。自由と友愛と近代の国だ。絵画と料理と文学の国だ。パリは美しいし、文化が多い。

ドイツは、正しい国だ。やる時はやるし、戦うときは戦う。自由だが、国家に従う。きちんと出来るが、辛い国だ。自由と正しさとキリスト教の国だ。哲学と音楽と数学と工学の国だ。長らく、東西冷戦の象徴だった。

イタリアは、美しい国だ。何も分からない代わりに、全て分かる。狂う代わりに、良い人間が多い。ローマカトリックやバチカンと、ルネサンス、ローマ帝国の国だ。

アメリカは、自由と金の国だ。全て、正しく考える。機会の平等がある代わりに、格差があっても自由だ。全て賢いが、その代り、文化は馬鹿だ。

ソ連(ロシア)は、革命と平等の国だ。独裁者と評議会を、矛盾なく行う。平等は、国家主義の共同体という異質なものを生み出した。

イギリスは、帝国だ。連合王国だ。世界の覇権と、世界都市ロンドン、カナダやオーストラリア、太平洋を含む英国連邦がある。

スペインとポルトガルは、南米へ植民地を作り、それらは独立した。

キリスト 17:54

キリストが、2つの世界を創った。

この現実世界と、夢の世界だ。

キリストは、2つのことをしている。

分かった人間に教えることと、終わった人間を殺すことだ。

終わっていない人間は、死なない。

全部自分と思って分かった。

人の言うことを、全部自分のことと思って分かる。

イエスのユダヤと、2つに分かれること、宣言で分からなくなった。

思い出せば分かる。

ユダヤ人 17:56

ユダヤ人は悪くない。

あらゆる全ての世界を分かって、

悲惨な戦いと地獄を最後まで永遠に経験し、

神が悪魔を殺すことで、平和な世界を創るのがユダヤ人の民族性だ。

悪いのは、日本人だ。

言語で皆を分からなくして、日本を滅ぼし、世界を馬鹿にする。

分からない 18:06

いつも、分からないのに説明するから、あまりに分からなくなって分かる。

記録し、思い出しただけだ。

宇宙を分かっている。

まだ分かっていない。未知のものを、未知と思えば治る。

物理 18:14

物質や宇宙の理は、全て自然科学で分かる。

証明と法則によって、空間におけるすべての可能性が分かる。

しかし、科学以上に、視点を変えることと関連付けることで分かることも出来る。

質量と力と熱を持った、原子の構造体が動くだけが宇宙だ。

変化とは、気体、液体、固体、と、位置とエネルギーの機械による変換だ。

数学は、空間とベクトル、そして微積分と解析だ。

大学数学は、なぜなら、微分積分学と、線形代数と、応用数学、例えば統計学だ。

大学数学は、なぜなら、方程式、関数、幾何学だ。

世界 18:14

最初からある世界は、可能性と法則、言語と重力だ。

あらゆる可能性を包括する世界にあるのは、統治と滅亡、安心と戦い、統一と多様性だ。

そして、目指すべき世界は、自由と平等による、不自由と不平等だ。

生き物は、理性と創造性を持ち、知覚と生きる意思を持った、考えながら戦い治るものだ。

変化とは、そのことをした後で、どうなるかだ。

変化は、自由を愛しながら、世界を支配することだ。

指導者 18:15

指導者は、他に自由で、国民に平等でなければならない。

一番上が誰かを他の誰かより優遇することは、あってはならない。

また、独りだけの自由では、他は何も出来ない。

他の支配者と、自由に争わなければならない。

運命や神など居ない。

そういうものは、極力居ないべきだし、極力無視するべきだ。

全ては、自由だ。

平等や支配は、皆の自由を奪い、支配する点が悪い。

国を滅ぼし、戦いと抑圧の世界になる。

人間はそれぞれ違う。全く同じでない。

しかし、支配者や遺伝子など、必要のない概念だ。

全体主義、社会主義、ファシズムは、個人の権利を何も考えない。

全て、独裁者だけが何でも出来、民衆は辛いし、何も出来ない。

全体主義を倒す、自由が正義だ。

指導者 18:17

指導者は、しかし、平等であるべきだ。

賢い人間から、幼い人間まで、全てに配慮するべきだ。

しかし、自由と民主主義が無ければ、国民は報われない。

ベクトル 18:19

ベクトルは、次元と行列であり、座標と空間と、方向だ。

微積分は、関数の変化を捉える付け足しであり、変動と総和だ。

そして、あらゆる数学は、数の論理で分かる。

全て、理性的に分かることが出来る。

関数と座標から分かるものだ。

平等 18:22

平等の良い点は、国家をきちんと考えて、皆を統一して平等にする。

支配者の良い点は、同じだ。国家をきちんと強くして、他の国よりも勝つようにする。

計算 18:25

計算は賢くない。当たり前の関係性から、同じことを組み替えて分かっているだけだ。

しかし、数式と証明が賢い。

良く考えると正しい、あるいは考えても分からない、証明と定数によって、あらゆる全てが分かっている。

あとは、やることはロボットだ。

しかし、演繹と証明することで、空間の謎はすべて解ける。

世界 18:27

世界にあるものは、人間的な脳と頭、心と感情、判断と理性による、認識、経験、感覚、感情、記憶、意識だ。

自由とは、世界の全ての可能性につけた名前だ。

世界の全ての可能性は、あらゆる遺伝子と家族と支配だ。

世界の全ての変化は、それぞれの意思と、それによる世界変革だ。

世界の全ての肯定と否定は、あらゆる出来事を生む。

世界と知識と情報の関わり合いは、むしろ、孤独な方が賢い。

世界 18:30

自由は、全く違う人間になって、認識の変化を分析することで、馬鹿なのに賢くなる。

平等は、皆を支配しながら導くことで、分かる代わりに、馬鹿になる。

愛 18:31

愛すること、信じること、夢を叶えること、生きる希望を与えることが自由だ。

目的を与えるためには、理想と現実を調和させなければならない。

意識と認識を融和し、感情と思考をトレースすることで、全員の変化を知ることが出来る。

戦うためには、神が居た方が良い。全ての判断に、全ての絶対者が意見するべきだ。

本来 18:37

本来あるべき人間の世界は、ベートーヴェンの第九交響曲のように、全ての人間の幸福と人生があるべきだ。

しかし、天国は、モーツァルトやバッハのように、楽しく、美しいだけの、幻想だ。

また、ドラえもんの、のび太やスネ夫やジャイアンのような安易な発想は、低いが、人間的だ。

パソコン 18:41

パソコンは、自由なのに不自由を強制する。

可能性にあふれた計算機なのに、自由でない。何も出来ない。

何故、何も出来ないかというと、コードが巨大すぎて、全て、作るための試行錯誤に打ち消されてしまう。

それから、発想は、ネットワークを使うだとか、グラフィックスをコピーするとか、安易な発想しかない。

もっと突飛な発想をすれば良いが、そういうものは馬鹿だ。

知 18:45

知の再利用と、共有は、時に一番正しい。

皆のすでに持っている知を知らなければ、何も分からない。

しかし、ある程度知ってしまえば、残りは、考えるだけで補充できる。

そのためには、賢い人間よりも、ただの馬鹿の方が良い。

マルチメディア 19:40

音楽、映像、テキストなどのマルチメディアを扱うのが、より高度なパソコンだ。

Googleのストリートビューを動画や音声、テキストに変換しても良い。

あるもの 19:41

あるものは、分類などの構造と、手順などの具体的な積み重ねだ。

あるものは、自由な環境と、支配と権利と、出来る、出来ないの構造だ。

命題とは、論理的にその解が成り立つかを考え、場合を照らし合わせることだ。

論理的な知性をつけることで、分からないところは全て分かる。

それが本当に正しいか、真実を知る興味や好奇心をつけるべきだ。

情熱と洞察力と意志が全てだ。

しかし、時に世界を把握しながら、可能性を知ることも良い。

考え方 19:47

決まった考え方や手順と、具体的な内容であるコンテンツが全てだ。

すでに決められた関数の定義と、動的に発生する関数の実行がコンピュータだ。

手順は共有すべきだが、コンテンツはリンクすべきだ。

コンピュータは、データと手順だ。

芸術 19:49

芸術は、己の中にある考え方や世界観を表現することだ。

科学は、確かめながら推論することで、真実と論理の正しさを知ることだ。

競争は、共有よりも良い。正しく会社が戦う中で、皆が豊かになる。

それぞれのものと人間を主題にし、その中でテーマを決めて述語を述べれば、普通の日本語になる。

人間は、創造性と工夫だ。

人間は、孤独と戦いと議論だ。

人間は、アイディアの共有だ。

人間は、ひとり何かを目指して活動することだ。

人間は、情報共有だ。

世界は、融和し、分裂することだ。

世界は、増えながら可能性が高まり、減りながら実現性が高まる。

信じればそれで分かり、疑えば賢く分かる。

言語 19:54

オープンソースの優越性として、コマンドとプログラミング言語の多様性がある。

とくに、GCCと各種のスクリプト言語は、何か有料なものを購入することなしに、パソコンを計算機としての本来の姿に出来る。

また、RPM/Dpkgなどのパッケージングシステムは、簡単なパッケージの集まりとして、独自のOSやディストリビューションを簡単に作ることが出来る。

カーネルは、さらに単純なものに分岐しても良い。

あらゆるソフトウェアを、可読性や簡素化などの観点から、コードを簡素化し、機能を減らした単純なバージョンを分岐することも考えられる。

また、グラフィックソフトウェアをモジュール化し、Cによるコマンドにして、UIはコマンドラインとのインターフェースとすることで、改良と共有が簡単に出来るだろう。

コマンドやファイルシステムにRPMやGIT、Plan 9的なコマンドラインを統合することで、さらにUNIXを賢いものに進歩出来る。コマンドラインの様態を、設定によって動的に変えられる。

また、パッケージシステムには、依存関係でインストールすることは出来るが、簡単に依存関係を含めたアンインストールをすることが困難な場合が多い。しかし、解決策はある。Debian系であれば、aptitudeによって自動で依存関係を削除できる。Yumには、yum historyという機能がある。

Java サーブレット/PHP/ASP.NETと、HTML/CSS/JavaScriptによって、情報世界はさらに進歩するだろう。1つ、HTMLに関して言えることは、ユーザーの自由な記法を許すことで、あまりに発展し、良くなった。プログラミング言語においても、さらに自由な記法を可能にしながら、ユーザーの選択肢を増やし、文法は賢く分かりやすく統一することによって、さらなる発展が考えられる。

ヘッダーファイルの仕様を改良することで、キーワードを日本語にすることが出来るかもしれない。

Linux 20:18

Linuxの良い点は、UNIXをさらに改良する。

それから、それぞれのプロジェクトが独立していることで、それぞれ、好きなことをやっている。好きな部分を、好きなように改良する。

それを、ディストリビューションが集めて、統合された配布版のOSにするが、幾らでもパクリが許されるため、機能は豊富だ。

世界 20:28

世界にあるものは、原因と結果だけだ。

認識の変化によって、世界を知ることが出来る。

見て分かるものを、正しく多角的に捉えれば分かる。

辛い方を分かるより、楽な方を分かれば良い。

神 20:30

自分は、本当に神なのだろうか?それは、無いだろう。

色んな超常現象が世界に見られるのは、世界が分かっているからだ。

この世界は、おかしくない。自分で何かしない限り、何もない世界だ。

その点、他の人間は、何も分かっては居ないが、メインとなる世界の方を生きている。

僕は、何も思わないだけで、何もない世界を生きている。

超常現象とは、日本の音楽などで、神話のように語られる、僕の分身のようなものだ。

ポルノグラフィティやケミストリー、FLOWなどが語っている。

おそらく、僕はそれらに話している。

自由 20:33

自由に好きなことをしなければ、分からない。

皆同じ、普通の世界を見ている、普通の人間だ。

独り、皆を辿りながら、皆と話すことによって、世界の全てを分かる。

しかし、その道は、辛い。

それは、全て分からなくなって、知性がつくことでしか、治らない。

自由 20:35

自由には、自由なために起きる、義務というものがある。

世界をきちんと知り、世界ときちんと関わること。

それが無くなると、馬鹿になる代わり、楽になる。

コンピュータ 20:36

カーネルを低機能にして高速化し、VMを高機能化する、という発想も考えられる。

そのように、ビジョンを持って全体を整理する人間が必要だ。

宇宙人 20:37

宇宙人とは、全ての世界が分かった自分が作り出した、架空の惑星だ。

頭の中に、最初から最後まで、全ての宇宙と、全ての種類のものや事実がある。

それをひとつひとつ選びながら、決めながら、探して見つけるだけの世界だ。

技術 20:38

技術には、多様性が必要だ。

同じ技術の分野について、複数の具体的な技術が無ければ、世界は発展しない。

1つだけの独占企業はつまらない。

しかし、統一しなくて、ユーザーの体験が向上するはずがない。

アメリカ 20:40

アメリカなど、何も変わらない。

何かの根源と方向性が違うだけだ。

白人など、何も変わらない。

ドイツ人のバッハは、典型的なイタリア人だ。

Linuxカーネル 20:41

Linuxカーネルは、モジュラー化することによって、簡単に使えるようになった。

CPU処理、メモリ管理など基本的なコードは公式ブランチと、派生したブランチを取り込むことで行っている。

多様なファイルシステムや多様なCPUアーキテクチャ、デバイスドライバは、それぞれが分かれて行っている。

トーバルズは、おそらく何もしていない。パッチとブランチをマージしているだけだ。

そこまで、大した技術ではないが、GNUやX、KDE/GNOMEと組み合わせることで、フリーな中で最高のOSとなる。

分散すると同時に、集中化して行っている。

Linux 20:44

Gentoo Linuxのインストールと管理によって、Linuxシステムの仕組みは、簡単に全体像を見て分かることが出来る。

また、その理解を応用すれば、DebianやRed Hatのパッケージ形式は、簡単に分かる。

しかし、カーネルの開発は難しい。

逆を言えば、他の開発は、コードこそ巨大だが、コンパイラやライブラリを除けば、ただ使って作っているだけだ。

OS 21:06

下には、ハードウェアデバイスがある。

そのハードウェアデバイスを制御するための、一連のCとアセンブリの命令である、デバイスドライバがある。

カーネルは、デバイスドライバを使って、ハードウェアデバイスを支配し、相互にやり取りをしながら、カーネルにイベント命令を送る。

カーネルは、ハードウェアデバイスとデバイスドライバの上に立って、上層であるアプリケーション層を実行し、メモリ空間を分けながら、上層にはシステムコールやAPI、下層にはドライバインターフェースを提供する。

また、上層のアプリケーションと下層のハードウェアデバイスとの間では、デバイスやファイルの操作などによって、連携を実現する。

コンパイラはGCCを使って、全システムをコンパイルする。

その際に様々なハードウェアで動く機械語を実現するために、CPUアーキテクチャ別のCやアセンブリ命令のコードがある。

また、GCCやGNU Cライブラリなどでも、C言語やアセンブリによって、プラットフォーム別のコードがある。

また、マルチタスク、マルチプロセス、マルチユーザー、UNIXファイルシステムと、プロセス、デーモンを実現している。

それから、Xとの連携による、デバイスレベルでのハードウェア制御と、ネットワークへのシステムコールレベルの通信機能を、ハードウェアデバイスへのアクセスを含めて実現している。

マルチユーザー、マルチタスクのOSであるため、root以外はシステムファイルにアクセス出来ない、などのパーミッションと呼ばれる機能がある。

また、コマンドラインシェルによって、入出力とプロセス管理の機能がある。

UNIXファイルシステムでは、入出力とは別に、デバイスレベルでのファイル読み書きが実現されている。

そして、アプリケーションを実行するために、システムを保護した上での、バイナリ形式のプログラムの実行が出来る。

あとは、沢山の高速化と機能が存在する。

UNIXの機能を実現するために、GNU C標準ライブラリを使っている。

それから、コンパイラには、GCCを採用した。

さらに、コマンドである単純なプログラムは、GNU Coreutilsなど、主にGNUを使っている。

そして、Xはイベントレベルでのウィンドウシステムを実現する。ネットワーク透過により、メインのXサーバーから遠隔地のXクライアントを複数実行できる。

また、デスクトップ環境であるGNOMEやKDEが、Windowsなどと同等のGUI機能を実現している。

GNOMEでは、デスクトップでのオブジェクト指向を実現するために、C言語でオブジェクト指向を実現するGObjectを使っている。KDEでは、C++を使って、クラスベースのオブジェクト指向を行っている。

OS 21:19

簡単に言えば、デバイス <> カーネル <> アプリケーション、という層がある。

デバイスドライバは、デバイスレベルでの処理を行っている。

カーネルは、システム空間とユーザー空間を分けて、プログラムを実行している。

CPUとメモリを管理し、システムとしてマルチタスクや割り込み、スレッドなどの処理を実現している。

デバイスはネットワークやストレージを管理している。

ネットワークは、サーバーとクライアントでのipv4/ipv6やportなどの相互連携を実現している。

ストレージでは簡単なディレクトリとテキスト・バイナリの構造であるファイルシステムを、デバイスレベルで複数実現している。

アプリケーション 21:25

アプリケーションは、ただ、システムコールと標準Cライブラリの機能を使って、使いながら作っている。

オブジェクト指向によって、コンポーネントを継承し、カプセル化することによる機能性を実現している。

OS 21:27

基本的に、OSがしているのは、プロセス管理とメモリ管理だ。

そして、カーネルのシステムコールと、GNU CライブラリとGCCが、主にアプリケーションとのインターフェース層を作っている。

また、Xはウィンドウを管理し、グラフィックを表示する、ネットワーク透過なサーバーを作っている。Xは、GTK+やQtなどのツールキット層を通じて、アプリケーションにボタンやメニュー、フォームやビュー、自由なグラフィックスなどの機能を提供している。

全て、使って作るだけだ。

オブジェクト指向が、コンポーネントの再利用を実現している。

OS 21:34

メモリの保護には、セグメント方式とページング方式がある。

それから、仮想ファイルシステムなどがある。

良く考えると、デバイスドライバの管理と操作を、メイン制御として行っているのが、カーネルのはずだ。その中で、ファイルシステムやメモリ管理、ネットワークやグラフィックス、プロセス管理を、小さなコードで行っている。

その上部に、あらゆるアプリケーションが居る。ウィンドウシステムを実現するX - GTK+/Qt - GNOME/KDEの階層は、クラスやオブジェクトという考え方に基づいて、あらゆる機能を提供する。それを使って、プログラムを実現する。

カーネル 21:42

おそらく、常にカーネルがハードウェアを監視していればいい。

デバイスでイベントが発生すると、カーネルがデバイスドライバの関数をチェックし、何が起きたのかをカーネルに戻り値として与える。

そして、起きるべきことを、デバイスドライバの関数を実行して、実現する。

また、同じ原理を使って、カーネルが常に実行されているプログラムから戻ることで、システムコールとプログラムの命令を行ったり来たりする。

そして、ファイルシステムとマルチタスクにより、プログラムの制御とストレージへの読み込みと書き込みを実現する。

常に「プログラムの実行」と「カーネルの実行」を行ったり来たりしなければならない。

それは、プログラムをUNIXアプリケーションとしてC言語で記述し、アプリケーションをコンパイルするとき、あるいは実行するときに、必要に応じてシステムを参照するようにする。カーネルは、プログラムを透過的にカーネルが実行しながら、その命令の時点で、カーネルの関数を呼び出せばいい。

要は、監視が難しいだけだ。あとは、プロセスの連携とファイルが難しい。

カーネル 21:48

もっと簡単に言えば、カーネルが基本的に繰り返し自分を実行している。

そして、ハードウェアの操作を検知する。

その時、デバイスドライバの関数を実行し、必要に応じてシステムコールを実行する。

ハッシュのようにすれば良い。

そして、プロセスを実行するためには、おそらく、一行一行カーネルが翻訳するか、一度に実行を全て行う。

それも、同様に、main関数を実行すれば良いし、必要に応じて、システムコールを実行すれば良い。

おそらく、一度全て読み込んで、簡単に1行1行、機械語を送りながら、1つ1つの機械語命令や関数が終わるたびに、カーネルに戻れば良い。

プログラムを実行して、終わった時にカーネルの関数が実行されるようにして、カーネルの処理に戻れば良い。

カーネル 21:58

あまりカーネルやOSを作る意味がないが、意味が無くは無い。

例えば、機能性、高速化、安定性、簡素性などの改良もあるだろうが、とくに、独自性がある。

独自のコマンドラインを実現すれば面白いかもしれない。

カーネル 22:02

プログラムとカーネルの行き来は、一行一行翻訳しても良いが、プログラムをカーネルの一部にしてしまえばいい。

世界 22:25

世界は、共生と安心、公正な取り引きだ。