個人用MEMO

個人的なメモに使うことが多いです

OS自作でのツールまとめ

30日でOS自作と言う本を買ったのですが、開発環境がwindowsという大罠。
CentsOSを使いたいので、入れたツールに関するメモ。
バイナリエディタvimでいきます。
VirtualBoxエミュレータ代用しようと思ったけどうまくいかないので調べると、
qemuと言うツールがあるらしい。

QEMU

ソースおとして適当にビルド。

あとは、この本で使われてるNASKはNASM をベースとしたアセンブラで、「インテル構文」と呼ばれる書き方だそうです。
GASは「AT&T構文」と呼ばれる書き方で、GASの書き換えを行います。
書き換えたら、実際に動かしてみます。

$ as ファイル名.s -o ファイル名.o
$ objcopy -R .note.gnu.build-id -S -O binary ファイル名.o ファイル名.img
$ qemu-system-x86_64 -fda ファイル名.img

面倒くさいので、もちろん既に自動化済み。
自作OS頑張ります!!!!!!!!

シェルスクリプト 64bitと32bit

もう100億回くらい調べてるのに、毎回忘れるのでメモ
64bitと32bitでの処理を分けたいとき

if [ `getconf LONG_BIT` = "64" ]; then
        cd 64bit
        処理1
else
        cd 32bit
        処理2
fi

みたいに書けばOK。
suaXD

レポジトリの優先度

昨日のカーネルパニックを乗り越え知ったことのメモ

別にnox-dextop消さなくても、

# yum -y install yum-priorities

このパッケージ入れるだけでリポジトリの優先度を指定できるらしい。

# vim /etc/yum.repos.d/CentOS-Base.repo

それぞれにpriorityを設定すれば優先度指定できるらしい。
優先度は数値が小さい方が優先されます。

メモ:今週ルータもらいにいく

yum updateでエラー祭り

今後のためにメモ。

# yum update

を実行するとエラー祭り状態に

f:id:bP2suw:20170604175101p:plain

# yum remove gnome-desktop-2.28.2-11.el6.centos.x86_64

で解決。
さらに他にもエラーが、
なんかbaseを見ないといけないはずが、他のレポジトリ見てるみたいだった。
nux-dextop?こんなの追加した記憶もないのでとりあえず削除。

# rpm -qa | grep dextop
nux-dextop-release-0-1.el7.nux.noarch

一応、削除する前に--testつけて確認します。

# sudo rpm -e --test nux-dextop-release-0-1.el7.nux.noarch
# sudo rpm -e nux-dextop-release-0-1.el7.nux.noarch
# ls /etc/yum.repos.d

削除後、updateしたらエラー出なくなりました。
しかし、updateした後、奇跡のカーネルパニック
そのままPCを閉じました。