イヌツムリのメモ

学習したことのメモである。しかし、他の人が読んでもわかるように書こう。

2021-01-01から1年間の記事一覧

あんまり変わんないけど、pythonで巨大数を速く作る

はじめに 最大値を求めるコードを書くときに、最大値を仮おきしたい。 その際、どのようにしたら高速に作れるか調べた。 結果、どの方法もあんまり変わらなかった。 もっと値を大きく設定した場合に差が出るかもしれないが、必要なさそうなので検証しない。 …

virtualboxにcentos8を入れたかったができなかったので久しぶりにvagrantに頼ってみた話

はじめに kernel driverをいじりたかったのでcentos8を入れることにした。 (弊社環境は未だにcentos6... 誰が自動化されていない環境でウン百台もアップデートするんだ...) centos8のisoを用いたインストールがterminalからできなかったので、 vagrantを使っ…

linux kernelのテスト方法

linux kernelのテスト方法 linux kernelの開発でテストしたかったので調べた。 まずは項目だけ。 そのうち、使い方等を追記したい。 静的コード解析 sparse smatch coccinelle 自動パッチ 自動テスト ktest kselftest LTP autotest テストインフラ kunit ユ…

pythonの多次元リストの罠にハマった

はじめに 久しぶりにpythonを触ったら、ハマった。 多次元リストを生成して、そのうちの1つ値を変更すると、 他の列の値も変更されてしまった。 初期化方法がまずく、1つの列をコピーして多次元リストとしていたことが原因だった。 リスト内包表記すれば、そ…

linux kernelドライバでタイマー割り込みを実現するのにhrtimerを使ったのでメモする

はじめに hrtimerはhigh resolusion timerの略。 従来のtimer_listより高解像度なタイマーを提供する。 もとのドライバソフトウェアでは、timer_list を用いたブロックデバイスを使用していた。 timer_list では割り込みできる最小単位がmili secであったた…

modprobe: ERROR: could not insert 'module_name': Exec format error

はじめに modprobeしたが、モジュールをロードできなかった。 問題を解決できなかったが、別アプローチでロードすることはできた。 事象 $ make -C /lib/modules/$(uname -r)/build M="drivers/module_name" modules # make -C /lib/modules/$(uname -r)/bui…

Virtualboxの仮想マシンとlinuxホストマシン間でpingが通らない問題

はじめに virtualboxにcentos8を入れたがpingが通らない問題が発生した。 NATを介してホストマシンから仮想マシンへ接続することはできた。 しかし、仮想マシンからホストマシンへ、ホストマシンから仮想マシンへブリッジを介した通信ができなかった。 くだ…

centos6上にvirtualboxでcentos8環境を作りたい

はじめに centos6上にvirtualboxでcentos8環境を作りたい。 正攻法でうまく行かなかったので、vagrantのちからを借りようとしたら うまくできなかったので、邪道な方法で解決した。 vagrantをインストール (curlを添えて) boxを追加 (curlを添えて) vagrant …

virtualenvでpython環境を作る on Centos7

はじめに python3を使いたいがcentos7はpython2.7だったりする。 新しい環境ごとにpython3環境を構築しているので、手順を記録する。 linuxコマンドがpython2.7を使っていたりするので、あんまり触りたくない。 そこで、virtualenvを用いて指定したバージョ…

何回目かのgit clone できない問題対応

Git

もう何回になるかわからないけど、いつも忘れるgit cloneできないときの解決法を記録する。 よくぶち当たるのが下記の問題 proxyの設定 proxyのせいでSSLエラー gitバージョンが古い proxyの設定 到達できないとき。 (たまにdnsの設定できてないとかいるけど…