AWS 無償枠が嬉しい

AWS に無償枠が有るので、助かります。

 

AWSLAMP 環境を構築して、いろいろと実験出来ます。個人向けクラウドサービスに Xserver とか有りますが、OS は選べないですし、当然有償です。

標準は Amazon Linux 2 です。 RedHat Linux のクローンの様ですね。自分はずっと CentOS でやってきたので、管理が似ているんで助かります。ただ AWS の独自の用語が多くて慣れるのが大変です。

昨年まで自宅に HP MicroServer を持っていて、 VMware ESXiを入れて仮想サーバーを自由に作ってましたが、あまり利用することも無くなったので処分しちゃいました。

そうるすと、自分のテスト用サーバーが無くなり、不便になってましたが AWS 無償利用枠が有ることを思い出して、さっそく利用となりました。

 

ネットの情報を使って、東京ゾーンで立ち上げます。LAMP 系のソフトを AWS 側で用意してくれているので、それを利用します。 今回導入したLAMP 環境は 

Amazon Linux 2 , Apache 2.4, MiraDB 10, PHP7.2 です。

 

JetBrain の PHPStorm を IDE として契約してますので、Xdebug も導入します。

 

Amazon Linux インスタンスでユーザーアカウントを管理する

を使って ec2-user 以外のアカウントを利用するようにする。

 

 チュートリアル: Amazon Linux 2 に LAMP ウェブサーバーをインストールする

を使って LAMP を導入します。

 

PHP 開発環境では必須の tool は composer

これはこちらを見て導入

Download Composer

 

とりあえずこれで使えるかな。

あと SSL 対応しようと Let's Encript を見たら、インストール方法がかなり修正されていた。これは後で追加します。

 

 

 

 

 

AWS EC2 のCPU無制限が有った!

今圧倒的なシェアの有る AWS。 機能が満載で多分どんな要求にも答えられます。

客がサイト構築で使ってますが、自分にとって AWS 知らない事だらけです。

今回問題になったのが、処理するプログラムがバージョンアップしたので、実行時間が10倍となりました。定期的に起動してイベント開催に合わせて実行するのですが、次のイベントが押しても、処理が終わらない事が分かりました。

 

使ってる EC2 のインスタンスが t2 シリーズで CPU 無制限っていう機能が有ることが分かりました。t2 で動かしていると、暇な時はクレジットが溜まっていって、忙しい時それを利用する動きになってます。クレジットが尽きると、いいくら忙しくても vCore の 10% 位の能力しか利用できなくなります。

 

そこで CPU 無制限に設定するとその制限が外れて、クレジットが切れても、フルに vCore の性能を利用出来る様になります。

有償ですが1時間あたり、t2.micro だと 数円となるようです。この事が分かり助かりました。

 

オライリー・ジャパンの機械学習の電子本を買いました

 

f:id:itoh1023:20210103201441p:plain

オライリー・ジャパンの電子本は PDF/EPUB 版が有るって聞いてました。実際に買ってみた所両方がダウンロード可能で、全く DRM などの保護が全くかかって無くて、印刷も自由に出来るすぐれものです。

 

実は最近、深層学習入門を買って失敗しました。

アマゾンでもある評価が、

Pythonの基礎的な内容が半分NumPyとPandasの使い方で1/6、クラウドの使い方で1/6。残りは一応機械学習の部分だが、出力例が多くの比率を締めており、説明はほとんど無い。この本を読んでも現場で使えるようには決してならない。

となってるが、全くその通りで、これが教科書として使われているそうで、びっくりしました。

 

オライリー本の方、こちらは4千円を超えるので少し心配でしたが、読み始めていい感触なので、期待が持てそう。それに TensorFlow v2 をベースにしているのも購入した理由の一つです。

これで初めて 自分のPCのNVIDIA GPU が使えて嬉しかった。

 

ちなみに自分がオーライリー本を知ったのは、1980年代後半に Apollo Computer ってアメリカの会社の日本法人に勤めてて、出張した時、「X Window」本 のゲラ刷りが有り、良く書かれていて欲しいと思いました。それがオーライリーの初めての本だったそうです。後で知りました。

 

「動かしながらゼロから学ぶ Linuxカーネルの教科書」 買っちゃいました

昔の Linux は普通にカーネルをビルドするのは普通でした。でも最近はカーネルが巨大になってきたので、ビルドする事は無くなりました。

 

それ以降、カーネルを意識する事が無くなり、知識がどんどんと陳腐化しました。

 

f:id:itoh1023:20201121212707p:plain

そこで、この本を買って読んでます。知ってることも多々ありますが、知らなかった事も有ってなかなかためになります。

 

最初 Windows 10 上の WSL の Ubuntu 20.04 を利用してましたが、カーネルモジュールは使ってないことが分かりましたので、急遽 Vagrant 利用で Oracle VM Vertualbox の上の Ubuntu 20.04 を利用を開始しました。

 

いよいよこれからがカーネルビルド開始です。

 

 

デスクトップ PC を BTO で購入しました

最近藤井聡太二冠がPCの自作って話をしてて、久しぶりに自分も自作したいと思いました。
最近は様子が変わってきて、ケースには電源は付いてないし、電源も良いものは意外と高いし、ゲーム専用のPC なんか何十万円もします。
高級なグラフィックスボードが2~30万円もするんです・・・でも昔いた会社で業務用3D CAD 専用の高速グラフィックスボードを売ってましたが、100万円位してました。
で今流行の AMD の CPU あたりを考えてます。予算は 10万円未満。意外と Windows OS が1万円以上して高い!
今テレワークはノートPC Lenovo X220 にモニターとキーボードをつないで使ってます。CPU は Core i7 で速いはずと思いながら・・・もう8年前の機種なので、今の低価格CPUより確実にスピートは遅いのではと思ってます。
ただ自作は面倒なので、BTO でも良いかと思ってもいます。汎用の部品を使ってるので、小遣いで色々とアップデート出来ます。
---------------------------- 
と FB で書いて居たのですが、ついに今日 BTO で PC工房で購入しました。

f:id:itoh1023:20201004224914p:plain

一応ゲームPC構成らしいです。標準をすこし変えて、電源、メモリー容量と SSD にはこだわってみました。

勝手にコンパクトなケースかと思ったのですが、意外と大きくてびっくりしました。

早く来ないかな。

ゲームには興味ないので、AI のディープラーニングに使えると嬉しいです。

 

 
 

アメリカのコンピュータ学科での OS 教育で使われる教材OSに関して

以前から注目している、アメリカの著名大学で教材OS。

 

・MIT 

6.S081: Operating System Engineering

Xv6 (MITの先生が、なんで自分の大学で UNIX が開発出来なかったのか・・・って残念がった話は有名な様です。)

 

Stanford 大学

CS 140: Operating Systems (Spring 2019)

PintOS

 

CS140e – Embedded Operating Systems

ラズパイ上に組み込みOSを作るってコースです。

前回は Rust って言語でやろうとして失敗した様で、今は C で開発する方針に改められてます。やっぱり内容がハードな上、言語まで学習は半年のコースではたとえ Stanford の学生でもハードルが高かったのですね。

 

 

CMU

15-410, Operating System Design and Implementation

???

Mach OS にまだこだわりが有るようです。

 

・Harverd 大学

CS 161: Operating Systems (2019)

chickadee

他の大学は、殆どが C で書かれているOSが多い中、C++ を使って、珍しいです。

 

 

MIT Xv6 が RISC-V 対応になってました

2019年の秋から新学期が始まるアメリカの大学。

 

昨年度まで x86 ベースだった Xv6 が今年度から オープンアーキテクチャRISC-V に変更されてました!

6.S081: Operating System Engineering

 

さっそく macOS にインストールしました。

Installing on macOS

First, install developer tools:

$ xcode-select --install

Next, install Homebrew, a package manager for macOS:

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Next, install the RISC-V compiler toolchain:

$ brew tap riscv/riscv
$ brew install riscv-tools

The brew formula may not link into /usr/local. You will need to update your shell's rc file (e.g. ~/.bashrc) to add the appropriate directory to $PATH.

PATH=$PATH:/usr/local/opt/riscv-gnu-toolchain/bin

Finally, install QEMU:

brew install qemu

この通りで簡単に出来ました。

 

Xv6 の教科書も改定されてました。

xv6: a simple, Unix-like teaching operating system