Linux

Debian 7.6(wheezy)でLinuxカーネル 3.16.1をビルド

Debian(i686)の環境でLinuxカーネル 3.16.1をビルドしました。 自分用にも、作業過程をメモ。 作業環境 $ cat /etc/debian_version 7.6 $ uname -a Linux dyna 3.2.0-4-686-pae #1 SMP Debian 3.2.60-1+deb7u3 i686 GNU/Linux 作業過程 ダウンロードから.con…

straceの実験(returnのみのプログラム)

最近、straceコマンドを知ったので、簡単なプログラムで試してみます。 straceは、「あるプログラムが発行するシステムコールの内容を表示してくれるコマンド」です。 システムコールは正に、アプリケーションとOSのインタフェースなので、 これを一覧で見せ…

あるディレクトリ以下の総ファイルサイズを取得するには

あるディレクトリ以下の総ファイルサイズを取得する際に、 $ du -hs ディレクトリ のように、duコマンドを使った例を紹介されることが多いのですが、 duコマンドが返すのはブロックサイズであり、ファイルサイズではないため正確な数値は得られません。 (ち…

jslinux向けに最新カーネル3.8.5をビルド(つづき)

jslinux向けに最新カーネル3.8.5をビルド - へにゃぺんて@日々勉強のまとめ こちらの記事のつづきです。 ビルド 以下のファイルを生成して、「~/jslinux/」以下のものと差し替えます。 linuxstart.bin vmlinux-3.8.5.bin ビルドの手順は、大まかに以下の通…

jslinux向けに最新カーネル3.8.5をビルド

ネタとしては古いですが、jslinuxについていろいろと調べていました。 JSLinux これは、QEMUの作者でもある Fabrice Bellard 氏が、JavaScriptで動作するPCエミュレータを作成し、その上でLinuxを動作させているものです。 こちらでは、Linux 2.6.20が動作し…

Emacs 24.3のインストール

いきさつ これまで、Emacs 23.1を使用していましたが、JavaScriptを読むために「js2-mode」を入れようとしたら、 内部で使用している「prog-mode」というものが必要なようで、 Symbol's function definition is void: prog-mode と言われてしまいました。 Go…

マイク入力の録音

「arecord」というコマンドを使うと、コマンドライン操作で、マイク入力の録音ができます。 使い方 amixerコマンドや、google-volume-controlなどで、マイク入力を有効にしたあと、以下の例の様にWAVファイルへ出力できます。 3秒間録音し、「out.wav」とい…

画像検索結果上位N番目のダウンロードとランダムな壁紙設定

前回までのシェルスクリプト、 Google画像検索ダウンロードにサイズと保存ファイル名オプション追加 - へにゃぺんて@日々勉強のまとめ に以下の機能追加を行いました。 検索結果上位N番目をダウンロード(-nオプション、Nは1以上20以下の整数) スクリプト #!…

Google画像検索ダウンロードにサイズと保存ファイル名オプション追加

前回の、 Google画像検索の1件目をダウンロードするスクリプト - へにゃぺんて@日々勉強のまとめ の記事で紹介したスクリプトに、以下のオプションを追加しました 検索時の画像横幅(-wオプション) 検索時の画像縦幅(-hオプション) 保存時のファイル名(-fオ…

Google画像検索の1件目をダウンロードするスクリプト

どこかで記載済みかも知れないけども、少し改変したので、改めてメモしておきます。 スクリプト #!/bin/sh UA=Mozilla/5 URL=http://www.google.com/images?q=$(echo $* | nkf -WwMQ | tr = %) curl -s -A $UA $URL | sed 's/>/>\n/g' | sed 's/?/\n/g' | se…

wgetコマンドとテキスト整形コマンドを使って、現在時刻を取得

wget -qO - --header 'Accept-Language: ja' http://www.worldtimeserver.com/current_time_in_JP.aspx | tr -d '\r' | tr -d '\n' | tr '<' '\n' | grep font7 | tr -d ' ' | rev | cut -c1-5 | rev wgetコマンドと、各種テキスト整形コマンド(tr、grep、re…

キャラクタデバイスドライバのreadについての実験

これまで、キャラクタデバイスドライバのwrite(デバイスファイルに対して書き込みを行うタイプのもの)しか試していませんでした。 今更ですが、readについて、デバイスファイルを読み出すと「Hello」を返すものを作成しました。「copy_to_user()」の使い方の…

ftraceを試してみました

確認してみたら、Linuxカーネルのトレーサ「ftace」が使える状態になっていたので、ftraceを支援するコマンド「trace-cmd」もインストールして試してみました。 ◆ 2015/09/06 追記 ftraceの使い方について、以下の記事でまとめ直しました。 ftraceの使い方 -…

7セグメントLED表示器のデバイスドライバを作成しました

あけましておめでとうございます。 今年も、暇を見つけては少しずつ何か作ったりしてみたいと思っています。 よろしくお願いします。 さて、今回は前回の記事(id:cupnes:20121231:1356955476)で調査していた7セグメントLED表示器の、カソードコモンのもので…

T-SH7706LSRのCN2 3番ピンのハイ/ローを制御するデバイスドライバを作成

T-SH7706LSRのCN2の3番ピンのハイ/ローを制御するデバイスドライバを作成しました。 主に、前回の記事(id:cupnes:20121229:1356786112)で参考にした、 http://wave2.iobb.net/doc/summary/sh3wiki/wifky.cgi?p=LED%C0%A9%B8%E6%A5%C9%A5%E9%A5%A4%A5%D0%A4%…

implicit declaration of function `ctrl_outb'

http://wave2.iobb.net/doc/summary/sh3wiki/wifky.cgi?p=LED%C0%A9%B8%E6%A5%C9%A5%E9%A5%A4%A5%D0%A4%CE%BA%EE%C0%AE Linux-2.6.39.4でこちらの記事の内容を試そうとしたら、デバイスドライバのmakeで以下のお叱りを受けました。 $ make ARCH=sh CROSS_COM…

rmmod: chdir(/lib/modules): No such file or directory

http://wave2.iobb.net/doc/summary/sh3wiki/wifky.cgi?p=%BA%C7%BD%E9%A4%CE%A5%C7%A5%D0%A5%A4%A5%B9%A5%C9%A5%E9%A5%A4%A5%D0 こちらの記事を試そうとしたときに、添付のデバイスドライバのソースファイルのビルド、そしてinsmodまではうまく行ったのだが…

screenでシリアル通信を行う

シェル上でシリアル通信を行う専用のソフトウェアもありますが、screenでも行えます。 /dev/ttyS0 に割り当てられているとして、ボーレートを115200とすると 以下の様に実行してください。 $ screen /dev/ttyS0 115200 当然ですが、デフォルトではLinuxの改…

Linux-2.6.39.4のT-SH7706LSR向けコンパイル

家に転がっていた「T-SH7706LSR」のボードでLinuxを動かして、デバイスドライバ等、組込みLinux開発見たいな事をしたいと思い立って、早数ヶ月。 そもそもの、Linuxカーネルのコンパイルがうまくいかず、いろいろ試していたのですが、今回、linux-2.6.39.4で…