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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Cybozu
PRO
March 31, 2021
Technology
0
260
USBデバイスドライバの開発/cybozulabs-youth10-tokunaga
Cybozu
PRO
March 31, 2021
Tweet
Share
More Decks by Cybozu
See All by Cybozu
LLMでもいつものテスト技術〜意外と半分はこれまでのテストでした〜
cybozuinsideout
PRO
1
180
kintone開発のプラットフォームエンジニアの紹介
cybozuinsideout
PRO
0
940
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
76k
LLMアプリの品質保証
cybozuinsideout
PRO
1
410
技術広報チームに丸投げしない!「一緒につくる」スポンサー活動
cybozuinsideout
PRO
0
200
テクニカルライター (グループウェア) について
cybozuinsideout
PRO
0
150
つけまが降ってきた日
cybozuinsideout
PRO
1
630
「行ってよかった!」をみんなに広げる
cybozuinsideout
PRO
0
200
サイボウズの QAエンジニアについて / about cybozu QA
cybozuinsideout
PRO
3
4.6k
Other Decks in Technology
See All in Technology
Phase09_自動化_仕組み化
overflowinc
0
650
大規模ECサイトのあるバッチのパフォーマンスを改善するために僕たちのチームがしてきたこと
panda_program
1
330
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
kaomi_wombat
0
190
スピンアウト講座03_CLAUDE-MDとSKILL-MD
overflowinc
0
480
俺の/私の最強アーキテクチャ決定戦開催 ― チームで新しいアーキテクチャに適合していくために / 20260322 Naoki Takahashi
shift_evolve
PRO
1
370
スピンアウト講座05_実践活用事例
overflowinc
0
440
スピンアウト講座01_GitHub管理
overflowinc
0
510
形式手法特論:SMT ソルバで解く認可ポリシの静的解析 #kernelvm / Kernel VM Study Tsukuba No3
ytaka23
1
720
20年以上続く PHP 大規模プロダクトを Kubernetes へ ── クラウド基盤刷新プロジェクトの4年間
oogfranz
PRO
0
150
_Architecture_Modernization_から学ぶ現状理解から設計への道のり.pdf
satohjohn
2
630
Phase06_ClaudeCode実践
overflowinc
0
750
Kiro Powers 入門
k_adachi_01
0
130
Featured
See All Featured
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
200
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
250
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
210
How STYLIGHT went responsive
nonsquared
100
6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
410
So, you think you're a good person
axbom
PRO
2
2k
Skip the Path - Find Your Career Trail
mkilby
1
87
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
Fireside Chat
paigeccino
42
3.8k
YesSQL, Process and Tooling at Scale
rocio
174
15k
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