Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
USBデバイスドライバの開発/cybozulabs-youth10-tokunaga
Search
Cybozu
PRO
March 31, 2021
Technology
0
250
USBデバイスドライバの開発/cybozulabs-youth10-tokunaga
Cybozu
PRO
March 31, 2021
Tweet
Share
More Decks by Cybozu
See All by Cybozu
kintone開発チームの紹介
cybozuinsideout
PRO
0
75k
kintone開発のプラットフォームエンジニアの紹介
cybozuinsideout
PRO
0
60
AIツール開発ワークショップ(Dify)【サイボウズ新人研修2025】
cybozuinsideout
PRO
20
23k
モバイル【サイボウズ新人研修2025】
cybozuinsideout
PRO
3
3.8k
Git/GitHub を使う上で知っておくと嬉しいかも Tips【サイボウズ新人研修2025】
cybozuinsideout
PRO
14
10k
GitHub Copilot活用【サイボウズ新人研修2025】
cybozuinsideout
PRO
15
14k
ソフトウェアライセンス【サイボウズ新人研修2025】
cybozuinsideout
PRO
13
8.3k
エンジニアのためのアウトプット講座 〜知識をシェアするはじめの一歩〜【サイボウズ新人研修2025】
cybozuinsideout
PRO
7
4.6k
Docker入門【サイボウズ新人研修2025】
cybozuinsideout
PRO
13
12k
Other Decks in Technology
See All in Technology
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
1
120
DroidKaigi 2025 Androidエンジニアとしてのキャリア
mhidaka
2
380
Create Ruby native extension gem with Go
sue445
0
110
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
120
slog.Handlerのよくある実装ミス
sakiengineer
4
440
5年目から始める Vue3 サイト改善 #frontendo
tacck
PRO
3
230
研究開発と製品開発、両利きのロボティクス
youtalk
1
530
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
120
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
210
まずはマネコンでちゃちゃっと作ってから、それをCDKにしてみよか。
yamada_r
2
120
Rustから学ぶ 非同期処理の仕組み
skanehira
1
150
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Building an army of robots
kneath
306
46k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Code Review Best Practice
trishagee
71
19k
A better future with KSS
kneath
239
17k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Side Projects
sachag
455
43k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
Transcript
USB σόΠευϥΠόͷ։ൃ USBσόΠευϥΠόͷ։ൃ ୈ 10 ظੜɹϨΠϠθϛɹಙӬେو March 30, 2021
USB σόΠευϥΠόͷ։ൃ ༰ 1 ͡Ίʹ 2 USB σόΠευϥΠόͷ։ൃ USB σόΠεڞ௨ͷखॱ
USB ϑϥογϡϝϞϦυϥΠόͷ࡞
USB σόΠευϥΠόͷ։ൃ ͡Ίʹ ࣗݾհ ໊લ ಙӬେو ډॅ ਆಸݝҏݪࢢ ॴଐ ిؾ௨৴େֶใཧֶҬ
I ྨίϯϐϡʔλα ΠΤϯεϓϩάϥϜ౬ݚڀࣨ
USB σόΠευϥΠόͷ։ൃ ͡Ίʹ ࣮ͨ͠υϥΠό USB ΩʔϘʔυ USB Ϛε USB ϑϥογϡυϥΠϒ
USB σόΠευϥΠόͷ։ൃ ͡Ίʹ ΩʔϘʔυ͔ΒͷಡΈࠐΈ Figure: ΩʔϘʔυ͔ΒͷಡΈࠐΈ
USB σόΠευϥΠόͷ։ൃ ͡Ίʹ Ϛε͔ΒͷಡΈࠐΈ Figure: Ϛε͔ΒͷಡΈࠐΈ
USB σόΠευϥΠόͷ։ൃ ͡Ίʹ USBϑϥογϡϝϞϦ͔ΒͷಡΈࠐΈ
USB σόΠευϥΠόͷ։ൃ USB σόΠευϥΠόͷ։ൃ USBσόΠευϥΠόͷ։ൃͷେ·͔ͳྲྀ Ε 1 ϗετίϯτϩʔϥʢHCʣΛݟ͚ͭΔ 2 HC
ͷॳظԽ 3 USB σόΠεΛݟ͚ͭΔ 4 USB σόΠεڞ௨ͷॳظԽ 5 USB σόΠεͷछྨʹԠͨ͡ॳظԽ
USB σόΠευϥΠόͷ։ൃ USB σόΠευϥΠόͷ։ൃ USB σόΠεڞ௨ͷखॱ HCΛݟ͚ͭΔ HC PCI
σόΠεͷҰछ όε൪߸ (0 ≤ x < 256) ͱσόΠε൪߸ (0 ≤ y < 32) Λ શ୳ࡧ͢Δɽ xHCI ͷ߹ (class, sub, interface) = (0x0C, 0x03, 0x30)
USB σόΠευϥΠόͷ։ൃ USB σόΠευϥΠόͷ։ൃ USB σόΠεڞ௨ͷखॱ HCͷॳظԽ Ϧηοτ ϨδελʹඞཁͳΛઃఆʢ࠷େϙʔτͳͲʣ ֤छσʔλߏͷઃఆ
Ϧϯά ίϯςΫετ εΫϥονύου HC ͷಈ࡞։࢝
USB σόΠευϥΠόͷ։ൃ USB σόΠευϥΠόͷ։ൃ USB σόΠεڞ௨ͷखॱ USBσόΠεΛݟ͚ͭΔ HC ͕ USB
σόΠεͷଓΛݕ͢ΔͱɼΠϕϯτϦ ϯάʹใࠂ͞ΕΔ
USB σόΠευϥΠόͷ։ൃ USB σόΠευϥΠόͷ։ൃ USB σόΠεڞ௨ͷखॱ USBσόΠεڞ௨ͷॳظԽ ֤छσʔλߏͷॳظԽ τϥϯεϑΝʔϦϯά ίϯςΫετ
σεΫϦϓλͷऔಘ
USB σόΠευϥΠόͷ։ൃ USB σόΠευϥΠόͷ։ൃ USB σόΠεڞ௨ͷखॱ USBσόΠεͷछྨʹԠͨ͡ॳظԽ ͲͷઃఆΛར༻͢Δ͔ʢϒʔτϓϩτίϧʣ ετϨʔδͷ༰ྔͳͲͷऔಘ
USB σόΠευϥΠόͷ։ൃ USB σόΠευϥΠόͷ։ൃ USB ϑϥογϡϝϞϦυϥΠόͷ࡞ USBϚεετϨʔδσόΠεͷυϥΠόͷ ࡞ 2 ͭͷΓํ͕ଘࡏ͢Δɽ
Table: ϓϩτίϧͷҧ͍ ϓϩτίϧͷ໊લ ରԠ͍ͯ͠Δछྨ Bulk-Only Transport Specification શػछ USB Attached SCSI Protocol USB 3.0 ͷΈ
USB σόΠευϥΠόͷ։ൃ USB σόΠευϥΠόͷ։ൃ USB ϑϥογϡϝϞϦυϥΠόͷ࡞ σόΠεͱͷΓऔΓ 1 SCSI ίϚϯυͷૹ৴
2 σʔλͷૹ৴ɼ·ͨड৴όοϑΝͷϙΠϯλૹ৴ 3 ίϚϯυͷऴྃεςʔλεͷड৴
USB σόΠευϥΠόͷ։ൃ USB σόΠευϥΠόͷ։ൃ USB ϑϥογϡϝϞϦυϥΠόͷ࡞ ࢀߟʹͨ͠ͷ ༷ॻ xHCI USB3.2
USB2.0 ιʔείʔυ MikanOS QEMU ॻ੶ USB: The Universal Serial Bus, Benjamin David Lunt, Forever Young Software
USB σόΠευϥΠόͷ։ൃ USB σόΠευϥΠόͷ։ൃ USB ϑϥογϡϝϞϦυϥΠόͷ࡞ ॻ͍ͨιʔείʔυ Ramen OS https://github.com/toku-sa-n/ramen