人生は無限、終わりのない投げ_PHP チュートリアル

WBOY
リリース: 2016-07-12 09:05:54
オリジナル
1153 人が閲覧しました

人生は終わりがなく、投げ続けることも無限です

今日現在、私は個人的に 4 つのガジェットを投げています: Gaoge Yiqu (音楽プレーヤー)、LMOS (x86_64 システムのオペレーティング システム カーネル)、LMOSEM (ARM システム オペレーティング システム カーネル)、店頭に並んだばかりのコンピューター本(「組み込みオペレーティングシステムの徹底探求: ゼロからの設計、アーキテクチャ、開発」)は以下の通りです。


小学校4年生のとき、学校は情報の授業で、私は生まれて初めて実物のコンピューター、小さくて分厚いブラウン管モニターを見た。そのコンピューターは、学校の中で唯一タイル張りの教室に置かれていた。当時、学校にはコンピュータが 12 台しかなかったので、私たち学生は 6 ~ 7 人のグループで 1 台のコンピュータを共有しなければなりませんでした。授業中は靴を脱がなければならず、すぐに部屋は足の臭いでいっぱいになりました。私たちが話しているのは、DOS がインストールされたコンピューターでスーパー マリオをプレイしていたということです。2000 年以降に生まれた子供たちは、コンピューターが壊れるのを恐れて、コンピューターを操作する際に注意します。 。私の体調のせいで、私は移動が遅く、クラスメートはいつも飛行機に乗る機会を捉えていますが、結局のところ、私は一人で窓の前に横たわり、遠くの山や木々を眺めることしかできません。あの時、まだ遠い気持ちが心に残っていたのです…

時は、2008年、その年、私は20歳でした その夜、私は初めてコンピューターを手に入れました。コンピューター都市のマスターたちは、マシンの組み立てからオペレーティング システムのインストールまでを行い、最後に数千台のコンピューターを開きました。その作業にはわずか 10 分しかかかりませんでした。と感心し、自分もそんな達人になれるのではないかとその時思いました。夕食後、私は曲を再生するために再びQianqianjingtingの電源を入れたかったのですが、その時、マスターは私の後ろに立って、私をしばらく忙しくさせてくれました。長い間成功しなかったので、Qianqian Listening ソフトウェアが私を助けてくれるしかありませんでしたが、実際、その時は WINXP のスタート メニューを使用することさえできませんでした。もっと恥ずかしがってください... その結果、2008 年 6 月に私はそのマスターのレベルに到達し、私は軽蔑的に自分にこう言いました、インストラクターになるべきですか?

2008 年 8 月に、私はプログラミングの旅を始めました。プログラミングするには、さまざまなプログラミング言語を学ぶ必要があります。私が最初に学んだプログラミング言語は VB でした。実際、私は騙されました。VB は非常に強力な言語だと他の人が言うのを聞いて、それを学んだ後、VB プログラミングはコントロールを描画し、コントロールのプロパティを設定し、少し書くことだけだと感じました。イベントに応答するためのコードの数...VB が大学の中国語学科のすべてのかわいい女の子が学ばなければならない言語であることを知ったのは後になってからでした。また、Microsoft が開発したため、VB プログラミングが非常に簡単であることも知りました。私たちにはたくさんのことがあります...しかし、私が VB を学んだことを証明するには、VB を使用する必要があります。何を書けばよいでしょうか?当時とても憧れていた Qianqianjingting を思い出して、計画しました。音楽プレーヤーを作成するために BASS のオーディオ デコードを使い始めたのは 2009 年の 3 月 8 日のことでした。最終的にまともな音楽プレーヤー ライブラリを完成させるまでに 1 か月以上かかりました。そして、響き渡る名前、Gaoge を選びました。 Yiqu. Gaoge Yiqu は、サウンド効果と強力な拡張性を備えた音楽プレーヤーで、mp3 をサポートしています。 ; acc+; ac3; など さまざまなオーディオ形式をサポートし、10 バンドのイコライザー、マルチレベルのドルビーサラウンド、フェードインおよびフェードアウトのサウンドエフェクト、強力なデコードも備えています。以下に示すように、効率的な動的メモリ割り当てプログラム、および音楽ファイル管理プログラムです。

その後、インターネットをサーフィンし始めて、多くのハイテクソフトウェアは VB では実装できないことに気づき、その時初めて C 言語について知りました。これは高級言語だと感じたので、学生のように C を学び始めたのが、「Old Tan C」でした。コンピューター業界全体で有名な「Hello World」プログラムは、「Old Tan C」以外に何もできません。それができないなら、やめればいいだけです。次に、C++ と JAVA を投入します。結果は次のとおりです。私は今でも「hello world」プログラムを 1 日に 10 回しか書くことができません。幸いなことに、私にはインターネットがあるので、苦労した後、アルゴリズムとデータ構造を見つけることができました。ようやく、小さな機能を備えたソフトウェアを作成できるようになりました。おそらく、この場合は、オペレーティング システム API を再度発見しました。それまでは、コンピュータは買うときはこうあるべきで、回路から多くの機能をサポートしているはずだと思っていましたが、今では、そのようなものを持っていたことがどれほど愚かだったかを考えています。アイデア...

オペレーティング システムとは何ですか? そしてそれは何をするのですか? これらの問題を解決するために、私はオペレーティング システム理論の本を 5 冊以上読みました。これらの本は、オペレーティング システムを開発するためのものではありませんが、アプリケーション ソフトウェアがどんなに高度であっても、それはオペレーティング システムによってサポートされているということを理解することができました。同時に、オペレーティング システムもソフトウェアであることを知りました。その下位層はハードウェアですが、一般に、私はこのオペレーティングシステムに不思議な印象を残したと言われています。実際、私はこの謎に直面すると、あきらめるか、それとも2つの選択肢しかありません。結局のところ、私は諦められなかったため後者を選択し、最終的には、オペレーティング システムこそが私が書きたかったソフトウェアであるという狂気の決断を下しました。

それを知るために、既存のオペレーティング システムを変態のようにいじり始めたと思います: LINUX NT MACH FREEBSB SOLARIS MINIX L4 これらに関連する本をすべて探しました。ハードウェア プラットフォーム システムを理解していなかったので、オペレーティング システムを書くことはできませんでした。そのため、ハードウェア層に関連するさまざまな書籍を実際に読みました。そのほとんどは Intel の公式 PDF からのものでした。その前に、マイコンの原理やアセンブリ言語も学びました。

本を読むうちに、私は自分自身のアイデアや洞察を思いつきました。私はオペレーティング システムを書いているのに、なぜこれらのアイデアをコードに実装して実際のコンピュータで検証できないのかと考えました。こうして私のLMOSのプロトタイプが完成しました。ブート コードの最初の行から始めて、コードを何度もリファクタリングし、説明できないクラッシュに直面して何度も絶望しましたが、心の中では諦めたくありませんでした。残りは継続的な改善と絶えず投げ続け、そしてついに、現在のLMOS。数年間の独自開発を経て、現在 7 つのテスト バージョンをリリースしています。 LMOS は、32 ビットのシングル CPU アーキテクチャから 64 ビットのマルチ CPU アーキテクチャに発展し、マルチプロセス、マルチスレッド、マルチ CPU を備えた x86_64 システムの完全な 64 ビット オペレーティング システム カーネルになりました。仮想メモリのサポート コード量が 100,000 行に達しました。新しいオペレーティング システムが日常生活で実用になるには、長い道のりを歩む必要があり、その行き着く先は失敗する可能性が高いことを私はよく知っています。なぜなら、OSをゼロから独自に開発する人の行動は、少し狂っていて、少し精神異常だからです。私は単にオペレーティング システムに LMOS (liberty、madness、operating、system) という名前を付けました。何はともあれ、私は普通の人間ではありません。

ARM の出現により、人々はさまざまな小型、低電力のスマート ハードウェアを作成し、携帯電話、時計、冷蔵庫、エアコン、テレビ、洗濯機などの一般的な電子製品に組み込まれました。これらの一般的に使用される電子製品の製造により、製品はより強力かつスマートになり、ネットワークに接続してユーザーが遠隔から制御できるようになり、人々の生活が大幅に向上します。そこで 2013 年の後半、私は好奇心を抑えきれず、組み込みシステムについて学び始め、組み込みオペレーティング システムである LMOSEM を作成しました。私のこれまでのスキルと ARM システムの単純さのおかげで、組み込みオペレーティング システムを学習して実装することは難しくありません。 LMOSEM は ARM システムに基づいていますが、LMOSEM と LMOS はまったく異なるオペレーティング システム、異なるアーキテクチャ、および異なるコードであるだけでなく、LMOS ドライバ モデルで関連するデータ構造を再利用しています。同時に、LMOSEM は LMOS よりもはるかに単純で、カーネル部分のコードは 10,000 行を超えるだけです。

LMOSEM コードの量は非常に少ないので、本を書くのに非常に適しています。コードが書かれていますが、本を書くのはどれほど難しいでしょうか?書き始めて初めて、本を書く方法を発見しました。コードを書くよりもはるかに難しいのですが、私は諦めたくないので、この本を書きました。動作する組み込みオペレーティング システムを最初から設計して作成することを目的としており、ARM プラットフォーム システムを構造から始めて、組み込みオペレーティング システムの開発環境とインストール開発ツール チェーンについて説明し、その後アーキテクチャ設計に進みます。次に、組み込みオペレーティング システムのコードの最初の行から始めて、組み込みオペレーティング システム層、メモリ管理、割り込み管理、ドライバー モデル、プロセス管理、ファイル システムを実装する HAL について詳しく説明します。システム API およびその他の重要なコンポーネントについては、データ構造の設計から始まり、その実装の詳細と、ハードウェア プラットフォームや他のコンポーネントとの関係について詳しく説明し、最終的には完全で動作する組み込みオペレーティング システムを読者に提供します。実務者の視点からオペレーティング システムの本質を理解します。 「組み込みオペレーティング システムの詳細: ゼロからの設計、アーキテクチャ、開発」というタイトルの書籍が入手可能になりました。

LMOS の最新バージョンでは、以下に示すように、LMOS と LMOSEM の 2 つの主要なオペレーティング システムをさらに強力にする予定です。もっと本を読んでください。私の目的は、生き続け、闘い続けることです。だから、これは終わりではなく、始まりです...

私のブログについて:

http://blog.chinaunix.net/uid/28032128.html

http://www.it168.com/redian/lmos/
QQ: 609379965
Weibo: http://weibo.com/LMOSKERNEL

LMOS について:


LMOS のビデオ:

http:// www.iqiyi.com/w_19rs4e0k05.html#vfrm=2-3-0-1

LMOSEM について:


「組み込みオペレーティング システムの詳細な調査: 設計、アーキテクチャ、および開発」についてScratch" 》

サポートに興味がある場合は、http://product.china-pub.com/4879889 をクリックするか、このブログ投稿を共有して広めて LMOS をサポートしてください。よろしくお願いします。 !






www.bkjia.com本当http://www.bkjia.com/PHPjc/1067482.html技術記事人生は終わりがないし、投げることも無限だ
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!