RaspberryPiで学ぶ ARMデバイスドライバープログラミング 作者: 米田聡出版社/メーカー: ソシム発売日: 2014/09/24メディア: 単行本この商品を含むブログ (1件) を見る 上記を購入。 「はじめに」に Raspberry Pi についてはもとより、デジタル回路やC プログラミングの知識はすでにお持ちだという前提で説明を進めていきます。 とあり門前払いを食らった気分だが見なかったことにして読み進めてく。 内容としては、7セグ LED や LCD といった各種デバイスを実際に Raspberry Pi につないで制御する方法が紹介されている。 で、「Raspberry Pi についてはもとより、デジタル回路やC プログラミングの知識はすでにお持ち」かどうか甚だ疑問な私が実際にサンプルコードを動かしながら読み進めるまでに必要だった手順をご紹介。 Raspbian のビル
2014年11月06日20:04 Raspberry Pi のカーネルをクロスビルドする カテゴリRaspberry Pi sstea Comment(0)Trackback(0) 前回までは設定をいじってましたが、今回はLinuxカーネルを差し替えます。 ※こちらの記事で最新のRaspbianのカーネルを差し替えてますので、そちらも参考までに。 ◆VirtualBox上でクロスコンパイルする 特にカーネルを差し替える必要はないのかもしれませんが、自己満足コンフィグレーションの最適化のため、何となく自家製Myカーネルに差し替えたいと思います。愛着もわきますし。 Raspberry Piのターゲット上でカーネルをビルドをすることも可能ですが、カーネルビルドするにはRaspberry Piでは非力で、とても時間がかかってしまうため、VirtualBox上に構築したLinux Mintでクロスコ
「アプリケーションを開発し、それが動作する際にCPUやメモリーをどう使うのかが想像できる」。Linuxカーネルの開発に“メンテナー”として加わっている富士通の亀澤寛之氏は、OS作りに携わるメリットをこう語る。この能力があれば、情報システムの性能チューニングやトラブル対処に大きな武器となるのは間違いないだろう。 ただ、簡単にLinuxカーネルのメンテナーになれるわけではないし、OSを自分で作れるわけでもない。そこでLinuxディストリビューションを作ってみることを、お勧めしたい。Linuxディストリビューションは、Linuxカーネルを中核とし、各種システムソフトやアプリケーションをひとまとめにしたもの。GUI環境やパッケージ管理、起動関連のソフト、コマンド群やシェルなどを含んでおり、機能範囲でいえばWindowsに相当し、広い意味の「OS」といえる。 Linuxカーネルを開発するように内部ま
Save a copy of this as prog1.c if you want, and follow along. The first thing I'll do is to build it like this. Before we try to debug a later version of this (prog2), in gdb, we're going to look at the disassembly of it and learn a few things about how our program starts up. I'm going to show the output of objdump -d prog1, but I'm not going to show it in the order it would be dumped by objdump,
前回の投稿からそんなに経っていないのにCF-T7を購入しました。 送料込み8,000円ぐらい。 研究でJavaを使っているのですが、cf-w4だとメモリとCPUに限界を感じて安かったので、楽天をぽちっとしたのです。 cf-w4は今は亡き、ファンレスモデルということでレポート用に大事に使わせていただく(latexとwineでoffice2007)事にして、CF-T7にもArchを入れて使うことに。 思わずkernel再構築でつまずいたのでメモ。 手順としては、 $ mkdir tmp $ cd tmp $ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.11.5.tar.xz $ tar xvf linux-3.11.5.tar.xz $ zcat /proc/config.gz > ./.config $ su
サイボウズ・ラボの西尾 泰和さんが「エンジニアの学び方」について探求していく連載の第2回(毎週火曜日に掲載、これまでの連載一覧)。「WEB+DB PRESS Vol.80」(2014年4月24日発売)に執筆した「エンジニアの学び方──効率的に知識を得て,成果に結び付ける」の続編です。(編集部) 文:西尾 泰和 イラスト:歌工房 この連載では「エンジニアの学び方」をテーマにインタビューを行い、どういう「学び方」をしているのか探求していきたいと思っています。第1弾は、富士通のエンジニアとしてLinuxカーネルの開発に参加されている小崎資広さんです。 Linuxカーネルは、ソースファイルだけで3万5000個以上、行数にして1500万行を超える、巨大ソフトウェアです。小崎さんが、どうやってこの巨大なソースコードと戦っているかは、きっと「エンジニアの学び方」の参考になるはずです。
Linuxカーネル開発者になりたいと思っても、まず何から手をつけたらいいか分からず、始める前から挫折する人も多いだろう。すぐ始められる最初の一歩の例が、筆者の経験を交えて4つ挙げてある。 (これは、CUSECというイベントでの、カーネルは怖くないという話の続き) カーネルプログラミングを始めるにはどうしたらいいか、アドバイスを求めたことがある。その時は、こう回答があった。 仕事のためにカーネルを理解する必要がなくても、やってみたらどうだろう? Linuxカーネルメーリングリストに登録してみて、精一杯理解しようと頑張ってみよう。 メインのLinuxカーネルの一部にならないコードを書いているなら、時間の無駄だ。 これは私にとっては、全然、少しも役に立たなかった。そんなわけで、ここでは、あなたなりにOSやLinuxカーネルがどう働くか、楽しみながら理解していくための、いくつかの戦略について書いて
注:この記事はカーネル/VM+K*BUG勉強会@関西 ごかいめのダイジェスト版です。 詳しくは、以下の動画とスライドをご覧下さい。 OSvは、OpenJDKを仮想環境で高速に動かす事を目指していて、ユーザは基本的にJavaアプリケーションしか実行しないという前提になっています。 メモリプロテクションやリングプロテクションなどは使われず、JavaVMがユーザアプリケーションからの不正アクセスを保護します。 イメージ図: RubyプログラムやPythonプログラムはJRubyやJythonによって実行する事が可能ですが、CRubyやCPythonは含まれていません。 しかし、ユーザアプリケーションを実行する言語環境は別にJavaVMじゃなくてもいいのではないか?という考えも成り立つと思われます。 例えばCRubyを動かしてみるとか。 …という訳で、やってみようと思ったんですが、いきなりCRub
Raspberry PiのLinuxの起動プロセスをぐぐったらStack Exchangeでトピック「How does Raspberry Pi boot?」があったのでメモ 「how-the-raspberry-pi-boots-up」と「Raspberry PI bare metal Part 1: The Boot Process」も参考に。 これによるとカーネルが起動するまでのブートプロセスは3段階に分かれている。 Raspberry Piに電源が入った時はGPUが起動しARM coreはoff、SDRAMもdisabledな状態 GPUは1段階のブートローダーを起動。このブートローダーはSoCのROMにある。ブートローダーはSDカードを読み込んで2段階目のブートローダー(bootcode.bin)をL2キャッシュに読み込みと実行をする bootcode.binはSDRAMを有効に
angrのBackward Slicingを使ってみたので、わかったことをとりあえずメモしておきます。と言っても、Backward Slicingの実行方法自体はドキュメントに書いてあるので、知りたかったのはBackward Slicingしたあとにどのようにデータを見ればよいの?ってところですね。 まずは単純なテストプログラムを作成。これに対してBackward Slicingをしてみる。 #include <stdio.h> #include <string.h> #include <stdlib.h> char *correct_password = "test123"; void win(void) { printf("Password is correct!\n"); } void loose(void) { printf("Password is wrong!\n"); } i
本連載は、Linux 認定試験 LPICに対応しています。一般的なLinuxユーザーレベルのトピックは省略し、システム管理とサーバ管理の内容を取り上げています。また、LPIC対策だけでなく、関連するトピックについて系統的な理解を問う問題も出題しています。連載の特徴は、対象となるプログラムのバージョンを可能な限り明記していること、比較的新しくまとまった解説がまだ少ないトピック、重要だが理解しにくいトピックを優先して取り上げていることです。問題を解き、その解説を読むことにより実践でLinuxを活用できる力を身に付けます。 ■今回のディストリビューション:Fedora 問題を解く鍵 【1】 このトピックに関連した設定や試験問題を解く際には、以下の項目がポイントになります。 【1】カーネルコンフィグレーションの概要を把握しておく カーネル(kernel:核)はシステム起動時にメモリにロードされ、そ
Posted Oct 7, 2014 22:40 UTC (Tue) by hmh (subscriber, #3838) Parent article: The 3.17 kernel is out please apply: http://www.spinics.net/lists/linux-ide/msg49669.html Or wait for 3.17.1 before you try the shiny new kernel if any of your devices need the libata blacklist... For example, owners of Micron/Crucial MX500 and MX550 SSDs must _not_ use kernel 3.17 without the above fix, on pain of data
カーネル再構築の方法 UbuntuのユーザーやLinuxディストリビューションの作成者は、 カーネルのソースコードを使い、パソコンやスマートフォンで動作するOSを作ることができます。(=ビルド) この際、ユーザーは、利用するファイルシステムや周辺機器を動かすためのソフト(=デバイスドライバ)等を、 設定によって選択して、組み込んだり外したりできます。 また、カーネルを再構築することで既存のUbuntuのファイルシステムを変更できます。 ここでは、そのカーネル再構築の設定方法を実践的に紹介します。 「端末」の操作 ビルドに必要なパッケージ・ツールをインストールします。 $ sudo apt-get -y update パスワード入力 $ sudo apt-get -y install libncurses-dev $ $ sudo apt-get -y install build-essen
Linux 3.17 has been released on Sun, 5 Oct Summary: This release adds support for USB device sharing over IP, support for Xbox One controllers, support for Apple's thunderbolt, a new sealing API that restricts operations on shared memory file descriptors that allows easier shared memory programming for developers, support for page fault tracing in perf trace, support for only using signed kernels
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く