SlideShare una empresa de Scribd logo
1 de 47
Descargar para leer sin conexión
30日でできない!
コンピューター自作入門
@hktechno
自己紹介
@hktechno
川田 裕貴 (かわたひろたか)
● 筑波大学 情報学群 情報科学類 ++3 年

● 信仰: Emacs, Debian, Python
● 2011年度未踏IT人材発掘・育成事業
  ○ Open Design Computer Project コクリエーター
今日話すこと




     について
この本ご存知ですか?
30日でOS自作できた人、挙手! ノシ
できないですよねー (´・ω・`)
30日ではできないけれど...


2人がかりで
2年ぐらいあれば
どうにか形にはなりました。

ぼっちの人は頑張ってください。
Open Design Computer?
No Intel.
No ARM.
No MIPS.


The "mist32" Architecture.
All new open design processor.
デモ...
搭載している FPGA
ALTERA Cyclone IV EP4CE115
[Terasic DE2-115 Development Board]
魔法のデバイス FPGA

自由に回路を
書き換え可能な IC
ハードウェア記述言
(HDL)で回路を記述


主な用途
プロトタイプ
小ロットのチップ
プロジェクトの特徴

再利用可能な状態でソース・仕様を公開
 プロセッサの HDL は BSD ライセンス

開発ツールを一通り揃える
 当たり前だけど、ないと使ってくれない

モバイル機器に使われるようなものを想定
 OSが乗ったタブレットとかスマホとか
つまり...



敵は ARM
Cortex-Axx シリーズ
mist32 アーキテクチャ

アウトオブオーダー実行
 回路規模は大きくなるが速くなる

ハードウェアとソフトウェアの協調動作
 OS を支援する機能をたくさん載せる

独自の命令セット
 アウトオブオーダー実行に最適化
mist32 の位置づけ (   ⌓ )
 性能の目安→
↑ビット数
アセンブラとバイナリ
00000470 <genrand_int31>:
 470:   11 00 03 c0   push rbase
 474:   11 00 03 e0   push rret
 478:   18 00 03 c0   srspr rbase
                                         32bit
 47c:   0e e0 03 a0   lih rtmp,0x0
                                         addr
 480:   0d 40 47 a0   wl16 rtmp,0x220
 484:   20 70 03 e2   movepc    rret,8
 488:   14 40 03 a0   b     rtmp,#al
                                          call
 48c:   08 30 00 01   shr r0,0x1
 490:   12 00 03 e0   pop rret
 494:   12 00 03 c0   pop rbase          return
 498:   14 40 03 e0   b     rret,#al
全体図的な何か
開発規模について

MIST1032SAプロセッサ + ペリフェラル
 行数 : 81,000行
 使用LE : 101,800LE [in-order: 32,000LE]

開発環境
 GCC : 3,100行
 binutils(gas, ld) : 1,800行
 シミュレータ : 1,500行
 Newlib : 1,000行
やったこと

プロセッサの仕様策定
 レジスタ, 命令セット, MMU, 割り込み...

プロセッサー・ペリフェラルの開発
 Verilog HDL がりがり

開発環境の開発
 binutils (as, ld...), gcc, シミュレータ...
僕がやったこと

プロセッサの仕様策定
 レジスタ, 命令セット, MMU, 割り込み...

プロセッサー・ペリフェラルの開発
 Verilog HDL がりがり

開発環境の開発
 binutils (as, ld...), gcc, シミュレータ...
全般的に言えること



  とにかく資料がねぇ!
    (特に日本語)
作成の流れ
              命令セット仕様策定


 プロセッサコアの開発                  アセンブラの開発


                 コアのバグつぶし


                 周辺機能仕様策定


 割り込み・IO・MMU作成           コンパイラ・シミュレータの開発


                 バグの叩き合い


                  バグとの戦い


                  バグと共に(ry
プロセッサの仕様策定
もともと @cpulabs が開発してるプロセッサコアを元
にする (mist32 の原型)
つまり、このプロジェクトは僕はおまけ。

アウトオブオーダー実行にとにかく最適化。
一番楽しい時間帯。妄想アワー。

今思えば失敗したこと: 2オペランド...
アウトオブオーダー実行


知らない人いないよね。
Wikipedia でも見てください。

書く時間がなかったなんていえな(ry
mist1032sa プロセッサ
Load/Store 型 RISC スーパースカラ
2命令同時フェッチ/4命令同時実行
片方向の分岐予測と投機的実行
Tomasulo のアルゴリズム (OoO)
レジスタリネーミング
with Flag 命令の撤廃
with Flag 命令とは
典型的な例: ADDC (Add with Carry Flag)

フラグを見に行くのはブランチ系命令だけに。
フラグを書き込む命令は b の直前にある前提。

コンパクトな回路規模で OoO するには:
 命令の依存関係をとにかく少なくする必要
できなくなること
例えば x86 で言うと...
 CMP -> MOV -> MOV -> Jxx

CMP のフラグが Jxx まで引き継がれる、はず
OoO する際にフラグへの依存ができる

mist32 では、これを許さない!
Branch の直前に、フラグ変更命令を置く制約
ADDC はどうするの?
現状の mist32:
 フラグを参照する命令は branch のみ
 (基本的には)

ADDC のような命令は、キャリーをレジスタに返す
ような命令を作ればいい!
なんか問題でもある?
レジスタ
汎用レジスタ:
 32bit レジスタ 32本

その他システムレジスタ:
 スタックポインタ
 プログラムカウンタ
 ページテーブル, コントロールレジスタ...
奴らは戦力外通告だ!
アウトオブオーダーの邪魔になる技術例

ARM : 複雑な CC 実行!
SPARC : レジスタウィンドウ!!
MIPS : ディレイドブランチ!!!
SuperH : ディレイドブランチ...!!!!
x86    : 論外!!!!!
MMU
ページテーブル
 2段ページングに対応
 1ページ 16KB
 NX ビットみたいなものつけたり
 権限設定もできる

当たり前だけどセグメントなんてついてないよ
割り込み
何段階か割り込み優先度を設定
 すぐに割り込む
 一定時間おきに割り込みを一気に割り込む
 コンテキスト終了と同時に割り込む

クソみたいな割り込みによって、
コンテキストが突然終了してほしくない!
コンテキストスイッチ
ハードウェアコンテキストスイッチ支援を実装
割り込みなどと協調動作できる

みんな使えよ!使うんだぞ!約束だぞ!

優先度によるキャッシュの有効活用
 優先度の高いコンテキスト情報は
 必ずキャッシュに載せるとか
プロセッサの開発
開発したのは良いものの...

DE2-115 に入りきらない!
論理合成時間かかりすぎ。(数時間)

OoO するとやっぱりでかくなるね...
インオーダーコアも作ろうか(´・ω・`)
↑ 未踏成果報告会3日ぐらい前
Binutils の移植
アセンブラも資料無くて大変だった
他の簡単なプロセッサを参考に、コピペしつつ
1度作れてしまえば次は簡単、のような

CGEN (Cpu GENerator) 使おう!
  sourceware.org/cgen/
コンパイラ (gcc) の移植
RTL テンプレートと、C をごりごり。
正直面白くない。
GCC Internals を頑張って読もう。

なぜ LLVM にしなかったのかと一晩(ry
まさかここまで LLVM, clang が進化するとは
先見性の無さ...('A`)
gcc の移植
とにかく

gcc/config/<arch>/<arch>.md
gcc/config/<arch>/<arch>.c
gcc/config/<arch>/<arch>.h

コレを書けばいい!
RTL テンプレート
(define_insn "addsi3"
  [(set (match_operand:SI 0 "register_operand"      "=r,r")
      (plus:SI (match_operand:SI 1 "register_operand" "%0,0")
            (match_operand:SI 2 "nonmemory_operand" "r,I")))]
  ""
  "@
   addt%0, %2
   addt%0, %2"
)
シミュレータ
とりあえず、書けばいいよ!
割り込みとか、IO 考えなければ、割と簡単。
さあ動かすぞ!
うごかなーい

実用的な、回路規模は FPGA 自体の回路規模の
80% ぐらいまで
それ以上になると、論理合成できても動かないこと
が多々
未踏での評価
担当 PM の評価はほどほどに良かったけど...

みんな(PM も含め)ハードウェアにもプロセッサにも
あまり興味がないみたいね
と言うより、純粋な技術に興味がないみたいね
確かに新規性ないね(´・ω・`)

モノはできてから応募したほうがいいかもね
これから...

インオーダーコアの制作 → Done!
 とりあえず規模の小さいものも作る

回路規模の縮小化
 DE2-115 デモボードに乗るようにする

OS をはやく載せられる状態に
 GCC のバグつぶし、OS 支援機能テスト
Web
プロセッサの仕様と移植に関する資料
 open-arch.org

ソースコード
 github.com/techno
 github.com/cpulabs
OS 載せるぞ!



   今後に期待してください

     Expect Us!

Más contenido relacionado

La actualidad más candente

IPA未踏成果報告会
IPA未踏成果報告会IPA未踏成果報告会
IPA未踏成果報告会
Ito Takahiro
 
x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設
Minoru Nakamura
 
いいかげんな人のためのTransactional Memory Primer
いいかげんな人のためのTransactional Memory Primerいいかげんな人のためのTransactional Memory Primer
いいかげんな人のためのTransactional Memory Primer
Yuto Hayamizu
 
スタート低レイヤー #0
スタート低レイヤー #0スタート低レイヤー #0
スタート低レイヤー #0
Kiwamu Okabe
 
Inkernel disasm-from-intelsdm-kernelvm
Inkernel disasm-from-intelsdm-kernelvmInkernel disasm-from-intelsdm-kernelvm
Inkernel disasm-from-intelsdm-kernelvm
Masami Hiramatsu
 
Pdp11onfpga
Pdp11onfpgaPdp11onfpga
Pdp11onfpga
xylnao
 

La actualidad más candente (20)

IPA未踏成果報告会
IPA未踏成果報告会IPA未踏成果報告会
IPA未踏成果報告会
 
SpectreとMeltdown:最近のCPUの深い話
SpectreとMeltdown:最近のCPUの深い話SpectreとMeltdown:最近のCPUの深い話
SpectreとMeltdown:最近のCPUの深い話
 
0章 Linuxカーネルを読む前に最低限知っておくべきこと
0章 Linuxカーネルを読む前に最低限知っておくべきこと0章 Linuxカーネルを読む前に最低限知っておくべきこと
0章 Linuxカーネルを読む前に最低限知っておくべきこと
 
SEH on mingw32
SEH on mingw32SEH on mingw32
SEH on mingw32
 
x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設
 
core dumpでcode golf
core dumpでcode golfcore dumpでcode golf
core dumpでcode golf
 
いいかげんな人のためのTransactional Memory Primer
いいかげんな人のためのTransactional Memory Primerいいかげんな人のためのTransactional Memory Primer
いいかげんな人のためのTransactional Memory Primer
 
Intel TSX について x86opti
Intel TSX について x86optiIntel TSX について x86opti
Intel TSX について x86opti
 
2章 Linuxカーネル - メモリ管理1
2章 Linuxカーネル - メモリ管理12章 Linuxカーネル - メモリ管理1
2章 Linuxカーネル - メモリ管理1
 
2013 1019osc-fallnetmf
2013 1019osc-fallnetmf2013 1019osc-fallnetmf
2013 1019osc-fallnetmf
 
Pdp11 on-fpga
Pdp11 on-fpgaPdp11 on-fpga
Pdp11 on-fpga
 
スタート低レイヤー #0
スタート低レイヤー #0スタート低レイヤー #0
スタート低レイヤー #0
 
Inkernel disasm-from-intelsdm-kernelvm
Inkernel disasm-from-intelsdm-kernelvmInkernel disasm-from-intelsdm-kernelvm
Inkernel disasm-from-intelsdm-kernelvm
 
Visual C++コード分析を支えるSAL
Visual C++コード分析を支えるSALVisual C++コード分析を支えるSAL
Visual C++コード分析を支えるSAL
 
あるmmapの話
あるmmapの話あるmmapの話
あるmmapの話
 
Pdp11onfpga
Pdp11onfpgaPdp11onfpga
Pdp11onfpga
 
あるキャッシュメモリの話
あるキャッシュメモリの話あるキャッシュメモリの話
あるキャッシュメモリの話
 
Androidとfpgaを高速fifo通信させちゃう
Androidとfpgaを高速fifo通信させちゃうAndroidとfpgaを高速fifo通信させちゃう
Androidとfpgaを高速fifo通信させちゃう
 
4章 Linuxカーネル - 割り込み・例外 2
4章 Linuxカーネル - 割り込み・例外 24章 Linuxカーネル - 割り込み・例外 2
4章 Linuxカーネル - 割り込み・例外 2
 
Verilator勉強会 2021/05/29
Verilator勉強会 2021/05/29Verilator勉強会 2021/05/29
Verilator勉強会 2021/05/29
 

Destacado

低レイヤー入門
低レイヤー入門低レイヤー入門
低レイヤー入門
demuyan
 
組込みにおけるHTML5
組込みにおけるHTML5組込みにおけるHTML5
組込みにおけるHTML5
Tomo Watanabe
 

Destacado (20)

やってよかったOS作り
やってよかったOS作りやってよかったOS作り
やってよかったOS作り
 
ハッキング実演
ハッキング実演ハッキング実演
ハッキング実演
 
C++でできる!OS自作入門
C++でできる!OS自作入門C++でできる!OS自作入門
C++でできる!OS自作入門
 
低レイヤー入門
低レイヤー入門低レイヤー入門
低レイヤー入門
 
CTF超入門 (for 第12回セキュリティさくら)
CTF超入門 (for 第12回セキュリティさくら)CTF超入門 (for 第12回セキュリティさくら)
CTF超入門 (for 第12回セキュリティさくら)
 
組込みOSを作ってみよう!(オープンソースカンファレンス内セミナー資料)
組込みOSを作ってみよう!(オープンソースカンファレンス内セミナー資料)組込みOSを作ってみよう!(オープンソースカンファレンス内セミナー資料)
組込みOSを作ってみよう!(オープンソースカンファレンス内セミナー資料)
 
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門
 
Ctfのためのpython入門
Ctfのためのpython入門Ctfのためのpython入門
Ctfのためのpython入門
 
バイナリで遊ぼう(オープンソースカンファレンス2014 Tokyo/Fall ライトニングトーク)
バイナリで遊ぼう(オープンソースカンファレンス2014 Tokyo/Fall ライトニングトーク)バイナリで遊ぼう(オープンソースカンファレンス2014 Tokyo/Fall ライトニングトーク)
バイナリで遊ぼう(オープンソースカンファレンス2014 Tokyo/Fall ライトニングトーク)
 
Hacking Ctrl-C
Hacking Ctrl-CHacking Ctrl-C
Hacking Ctrl-C
 
コンピュータビジョン 1章
コンピュータビジョン 1章コンピュータビジョン 1章
コンピュータビジョン 1章
 
【学習メモ#11th】12ステップで作る組込みOS自作入門
【学習メモ#11th】12ステップで作る組込みOS自作入門 【学習メモ#11th】12ステップで作る組込みOS自作入門
【学習メモ#11th】12ステップで作る組込みOS自作入門
 
【学習メモ#8th】12ステップで作る組込みOS自作入門
【学習メモ#8th】12ステップで作る組込みOS自作入門 【学習メモ#8th】12ステップで作る組込みOS自作入門
【学習メモ#8th】12ステップで作る組込みOS自作入門
 
【学習メモ#9th】12ステップで作る組込みOS自作入門
【学習メモ#9th】12ステップで作る組込みOS自作入門 【学習メモ#9th】12ステップで作る組込みOS自作入門
【学習メモ#9th】12ステップで作る組込みOS自作入門
 
【学習メモ#4th】12ステップで作る組込みOS自作入門
【学習メモ#4th】12ステップで作る組込みOS自作入門【学習メモ#4th】12ステップで作る組込みOS自作入門
【学習メモ#4th】12ステップで作る組込みOS自作入門
 
【学習メモ#3rd】12ステップで作る組込みOS自作入門
【学習メモ#3rd】12ステップで作る組込みOS自作入門【学習メモ#3rd】12ステップで作る組込みOS自作入門
【学習メモ#3rd】12ステップで作る組込みOS自作入門
 
【学習メモ#6th】12ステップで作る組込みOS自作入門
【学習メモ#6th】12ステップで作る組込みOS自作入門 【学習メモ#6th】12ステップで作る組込みOS自作入門
【学習メモ#6th】12ステップで作る組込みOS自作入門
 
【学習メモ#5th】12ステップで作る組込みOS自作入門
【学習メモ#5th】12ステップで作る組込みOS自作入門【学習メモ#5th】12ステップで作る組込みOS自作入門
【学習メモ#5th】12ステップで作る組込みOS自作入門
 
組込みにおけるHTML5
組込みにおけるHTML5組込みにおけるHTML5
組込みにおけるHTML5
 
Effective Modern C++ Item 9 and 10
Effective Modern C++ Item 9 and 10Effective Modern C++ Item 9 and 10
Effective Modern C++ Item 9 and 10
 

Similar a 30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば

seccamp2012 チューター発表
seccamp2012 チューター発表seccamp2012 チューター発表
seccamp2012 チューター発表
Hirotaka Kawata
 
産学間連携推進室(AC部屋) 2012 成果報告会
産学間連携推進室(AC部屋) 2012 成果報告会産学間連携推進室(AC部屋) 2012 成果報告会
産学間連携推進室(AC部屋) 2012 成果報告会
Hirotaka Kawata
 
Dalvik仮想マシンのアーキテクチャ 改訂版
Dalvik仮想マシンのアーキテクチャ 改訂版Dalvik仮想マシンのアーキテクチャ 改訂版
Dalvik仮想マシンのアーキテクチャ 改訂版
Takuya Matsunaga
 
Exploring the x64
Exploring the x64Exploring the x64
Exploring the x64
FFRI, Inc.
 
Python Kyoto study
Python Kyoto studyPython Kyoto study
Python Kyoto study
Naoya Inada
 

Similar a 30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば (20)

seccamp2012 チューター発表
seccamp2012 チューター発表seccamp2012 チューター発表
seccamp2012 チューター発表
 
産学間連携推進室(AC部屋) 2012 成果報告会
産学間連携推進室(AC部屋) 2012 成果報告会産学間連携推進室(AC部屋) 2012 成果報告会
産学間連携推進室(AC部屋) 2012 成果報告会
 
Code Reading at Security and Programming camp 2011
Code Reading at Security and Programming camp 2011 Code Reading at Security and Programming camp 2011
Code Reading at Security and Programming camp 2011
 
Programming camp code reading
Programming camp code readingProgramming camp code reading
Programming camp code reading
 
Programming camp 2008, Codereading
Programming camp 2008, CodereadingProgramming camp 2008, Codereading
Programming camp 2008, Codereading
 
Prosym2012
Prosym2012Prosym2012
Prosym2012
 
Sourcecode Reading Workshop2010
Sourcecode Reading Workshop2010Sourcecode Reading Workshop2010
Sourcecode Reading Workshop2010
 
StackExchangeで見たシステムプログラミング案件
StackExchangeで見たシステムプログラミング案件StackExchangeで見たシステムプログラミング案件
StackExchangeで見たシステムプログラミング案件
 
Dalvik仮想マシンのアーキテクチャ 改訂版
Dalvik仮想マシンのアーキテクチャ 改訂版Dalvik仮想マシンのアーキテクチャ 改訂版
Dalvik仮想マシンのアーキテクチャ 改訂版
 
Exploring the x64
Exploring the x64Exploring the x64
Exploring the x64
 
Meltdown を正しく理解する
Meltdown を正しく理解するMeltdown を正しく理解する
Meltdown を正しく理解する
 
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPCZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
 
Python Kyoto study
Python Kyoto studyPython Kyoto study
Python Kyoto study
 
Polyphony の行く末(2018/3/3)
Polyphony の行く末(2018/3/3)Polyphony の行く末(2018/3/3)
Polyphony の行く末(2018/3/3)
 
私とOSSの25年
私とOSSの25年私とOSSの25年
私とOSSの25年
 
MinChain – Bitcoin ライクな最小限のブロックチェーン実装
MinChain – Bitcoin ライクな最小限のブロックチェーン実装MinChain – Bitcoin ライクな最小限のブロックチェーン実装
MinChain – Bitcoin ライクな最小限のブロックチェーン実装
 
Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊
Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊
Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊
 
KOGEI & KAIT Funnel WS
KOGEI & KAIT Funnel WSKOGEI & KAIT Funnel WS
KOGEI & KAIT Funnel WS
 
C# 7.2 with .NET Core 2.1
C# 7.2 with .NET Core 2.1C# 7.2 with .NET Core 2.1
C# 7.2 with .NET Core 2.1
 
第162回情報処理学会ハイパフォーマンスコンピューティング研究発表会
第162回情報処理学会ハイパフォーマンスコンピューティング研究発表会第162回情報処理学会ハイパフォーマンスコンピューティング研究発表会
第162回情報処理学会ハイパフォーマンスコンピューティング研究発表会
 

Último

Último (12)

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 

30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば