今更ながら、include/linux/kernel.h container_of が相当使えるマクロ関数だと気づきました. 一見わかりにくいのですが、なんと「変数が入っている構造体へのポインタ」をコンパイル時に計算してくれるのです. container_of を用いることで、API に縛られず、データのひも付けを行うことができます. 以下のような感じです*1: struct callback_timer{ struct hrtimer timer; void (*callback)(unsigned long data); unsigned long data; int index; } struct callback_timer cb_timer[128]; // タイマが点火したときに呼ばれる関数. enum hrtimer_restart handle_hrtimer (struc
東大・坂井 コンピュータアーキテクチャ コンピュータアーキテクチャ(5) 坂井 修一 東京大学大学院 情報理工学系研究科 電子情報学専攻 東京大学 工学部 電子情報工学科/電気電子工学科 工学部講義 • はじめに • キャッシュ コンピュータアーキテクチャ はじめに 本講義の目的 – コンピュータアーキテクチャの基本を学ぶ 時間・場所 – 火曜日 8:40 - 10:10 工学部2号館241 ホームページ(ダウンロード可能) – url: http://www.mtl.t.u-tokyo.ac.jp/~sakai/hard/ 教科書 – 坂井修一『コンピュータアーキテクチャ』(コロナ社、電子情報レクチャーシリーズC-9) – 坂井修一『実践 コンピュータアーキテクチャ』(コロナ社) 教科書通りやります 参考書 – D. Patterson and J. Hennessy, Computer
そのような背景があって、2016年5月にCCIX Consortiumが設立された形だ。この設立直後に行われたXilinxの記者説明会でCCIXの概略が紹介されているが、まだこの段階ではあまり細かい話は出ていない。ただ、2018年のXDFのセッションでは色々細かな話が出てきて、概略はこれで理解できるかと思うが、もっと細かい資料がその後色々出てきたので、もう少し細かく紹介したい。 まずCCIXの実装であるが、PCI Expressの上にCache Coherency Protocolが載る形だ(Photo02)。ただPCIeそのままだと、Processor Memory Direct AccessもCache Coherencyもサポートされない(いやアプリケーション層でこれをサポートすれば可能だが、オーバーヘッドが大きすぎる)。そこでCCIXではPCIeのPHY層とDataLink層はその
ゲーム開発 プロジェクトマネジメント講座 2011年10月8日 株式会社スクウェア・エニックス CTO 橋本 善久 1 ©SQUARE-ENIX 2011 SQUARE ENIX OPEN CONFERENCE なぜプロジェクトは 失敗するのか? 2 ©SQUARE-ENIX 2011 プロジェクトの失敗ポイント • 見込みより売上が少ない • 計画よりもコストがかかっている • 発売時期が遅れた • 発売に間に合わせるため内容が削られた • ユーザーの評判が悪い • 不具合が発生 • スタッフの満足度が低い、故障者が出た、辞め てしまった • など・・・ 3 ©SQUARE-ENIX 2011 プロジェクトの失敗ポイントの分類 • スコープ(コンテンツの範囲)の問題 • 品質の問題 • コストの問題 • 時間の問題 • リソース(人員・環境)の問題 • ビジネスの問題 4 ©SQUARE
Arm入門勉強会とは、macOSがArmに移行したこの機にArmアーキテクチャでのプログラミングについて入門するソフトウェアエンジニアのための会です。今回主催の@nullpo_head 氏が、Armの仮想化支援機構について、その仕組みから深く説明します。後半は「AArch 64の仮想化支援機構」について。 AArch 64の仮想化支援機構 以上が一般的な現代のハードウェア仮想化支援機構についての話になるんですけど、ここからはArmというか、AArch 64の仮想化支援機構についての解説を始めます。 対象アーキテクチャについてです。Virtualization ExtensionというのがArm v7のときの名前で、AArch 64ではどうもただの仮想化機構としか呼ばれていないみたいなんですけど、とりあえずAArch 64だけを対象に発表します。基本的には特権レベルの名前とかが変わるだけでだ
Arm入門勉強会とは、macOSがArmに移行したこの機にArmアーキテクチャでのプログラミングについて入門するソフトウェアエンジニアのための会です。今回主催の@nullpo_head 氏が、Armの仮想化支援機構について、その仕組みから深く説明します。前半は「現代のハードウェア仮想化支援機構」について。全2回。 ハードウェア仮想化支援とは何か 佐伯 学哉氏:入門セッション3つ目は『Armの仮想化支援機構』についての入門セッションです。どうぞよろしくお願いします。 本発表のスタートとゴールです。VMwareとかQemuとか使ったことあるけど仮想マシンの仕組みなんも知らんというところがまずスタートになっています。 1個目のゴールは、最近のVMのざっくりした仕組みとハードウェア仮想化支援とは何かということがわかること。そしてその話のあとに実際にArmの仮想化支援機構の概要を説明し、Armの仮想
Product Documentation for Red Hat Enterprise Linux for Real Time 8
This tutorial demonstrates how to develop and debug a basic hardware driver for Raspberry PI. It will demonstrate the following techniques: Controlling the BCM2708/BCM2835 peripherals by accessing their hardware registers Creating a sysfs device object to provide user-mode control interface Using software timers provided by Linux Kernel We will create a kernel module that will make an LED connecte
前提 Raspberry Pi上で実行 デバイスファイルに何かを書き込むと、GPIO21を出力させる モジュールをrmmodすると出力が終わる Raspberry Pi Model B+(多分) シンプルなキャラクタ型デバイスドライバ作成メモ(cdev) - Qiita の続き エラーハンドリングは一切なし コード #include <linux/module.h> #include <linux/init.h> #include <linux/kernel.h> #include <linux/fs.h> #include <asm/uaccess.h> // copy_from_user #include <linux/cdev.h> // cdev★ #include <linux/ioport.h> #include <linux/io.h> #define NODE_NAME "
The Xen Project is excited to share that the Xen Hypervisor now runs on Raspberry Pi. This is an exciting step for both hobbyists and industries. Read more to learn about how Xen now runs on RPi and how to get started. Written by Stefano Stabellini and Roman Shaposhnik, originally posted on Linux.com Raspberry Pi (RPi) has been a key enabling device for the Arm community for years, given the low p
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く