狠狠撸

狠狠撸Share a Scribd company logo
Linux     i   g e   s t
        d
趣旨


ソースのコンパイルが怖くなくなる

プログラムが動く仕組みをできるだけ低レベ
ルで理理解する
ふつうの尝颈苍耻虫プログラミング
hello
world!
set-‐??up


MacOSX: ?install ?XCode

Linux(debian/ubuntu): ?aptitude ?install ?
build-‐??essential
Let?’s ?compile


hello ?world!!

https://github.com/dot/helloworld

  (简単な颁/颁++の解説)
C/C++



cc/gcc/c++/g++

コンパイラとインタプリタとVMと
compiler

プリプロセス(gcc ?-‐??E)

コンパイル(gcc ?-‐??S)

アセンブル(gcc ?-‐??c)

リンク
linker


static/dynamic ?link

何をやってるか?見見てみよう

  otool ?-‐??L ?(mac)/ldd ?(linux)
Make?le


べんり

  同じコマンド何回も打つのにプログラマな
  ら?馬?鹿鹿正直にコマンドうたないよね?

omake/nmake/rake/ninja
debug


gdb

trace(strace/dtrace)

SystemTap
testing


unittest

  cppunit

  gtest
linux
Operating ?System



shell+library+commands+X+ ?....

distribution
Kernel

Kernel ?≒ ?Linux
device
   CPU/GPU/Memory/HDD
device-‐??driver
scheduling, ?virtualize...
ソフトウェアとハードウェアの仲介役
system ?call ?


why ?c/c++?

deviceを動かすようにkernelに命令令する

read/write/open/close...
Library ?

the ?other

printf/strlen

libc(標準Cライブラリ)

  linked ?by ?default
man

man ?<section> ?xxx

man ?1 ?(command)

man ?2 ?(system ?call)

man ?3 ?(library)

  etc. ?man ?5 ?fstab ?-‐??> ?man ?man
?File
 ?Process
 ?Stream
File ?

ls

     ?le/dir/symlink/device ??le/proc

permission

?lesystem
Process

ps ?aux

  kernelやinitもprocess

signal

  Ctrl-‐??C(SIGINT)

  kill ?-‐??HUP ?xxxx
signal

signal

segmentation ?fault

  SIGSEGV

process間通信
Stream

byte ?array

  device

  pipe

  network
user/group

ls ?-‐??l

permission

      process/?le

passwd/group ??le

credential
standard ?I/O


stdin/stdout/stderr

  streamの?一種

pipe
directory ?tree

FSH(Filesystem ?Hierarchy ?Standard)

  /

  /bin, ?/sbin

  /lib
/usr

src

include

share

local
/var


spool

run

log
root

etc
dev
proc
boot
root
tmp
home
memory


CPU ?& ?memmory

virtual ?memory/ ?physical ?memory

swap ?memory, ?paging...
more
deeper
topics
hardware ?architecture

c/c++ ?programming

network

More Related Content

What's hot (14)

PDF
丑辫颈苍驳で作るパケット
Takaaki Hoyo
?
PDF
顿笔顿碍を用いたネットワークスタック,高性能通信基盘开発
slankdev
?
PPT
Solaris Container
Fumikazu FUJIWARA
?
PDF
OpenSolaris Printing Environment
Naruhiko Ogasawara
?
PDF
マスタリングJUNOS JUNOS CLIの階層構造
ZenSekibe
?
PDF
TCP connectionの保存と復元
mittyorz
?
PDF
Lagopus 0.2
Masaru Oki
?
PDF
pkgsrc とは何か? - よもやま話
Akio OBATA
?
PDF
Lagopus.confの書式(for lagopus 0.1.x)
Masaru Oki
?
PDF
"Bits from the Apache Maintainers / Upcoming apache2 2.4 transition" を読んでみた
Tsuyoshi Yamada
?
PDF
蝉测蝉迟别尘诲でよく使うサブコマンド
Kazuhiro Nishiyama
?
PDF
OSC2012 Tokyo Fall OpenStack Essex Multinode Demo
irix_jp
?
PDF
VIOPS06: マルチコア時代のコンピューティング活用術
VIOPS Virtualized Infrastructure Operators group ARCHIVES
?
丑辫颈苍驳で作るパケット
Takaaki Hoyo
?
顿笔顿碍を用いたネットワークスタック,高性能通信基盘开発
slankdev
?
Solaris Container
Fumikazu FUJIWARA
?
OpenSolaris Printing Environment
Naruhiko Ogasawara
?
マスタリングJUNOS JUNOS CLIの階層構造
ZenSekibe
?
TCP connectionの保存と復元
mittyorz
?
Lagopus 0.2
Masaru Oki
?
pkgsrc とは何か? - よもやま話
Akio OBATA
?
Lagopus.confの書式(for lagopus 0.1.x)
Masaru Oki
?
"Bits from the Apache Maintainers / Upcoming apache2 2.4 transition" を読んでみた
Tsuyoshi Yamada
?
蝉测蝉迟别尘诲でよく使うサブコマンド
Kazuhiro Nishiyama
?
OSC2012 Tokyo Fall OpenStack Essex Multinode Demo
irix_jp
?
VIOPS06: マルチコア時代のコンピューティング活用術
VIOPS Virtualized Infrastructure Operators group ARCHIVES
?

Viewers also liked (20)

DOCX
Linux syllabus
Linux Training Chennai
?
PDF
自宅サーハ?ーを立てる话
naba0123
?
PDF
JA7YCQプログラミング勉強会 第1回 ~プログラミングやってみようか~
Neppo Telewisteria
?
PDF
痴颈(尘)を教えた话
gu4
?
PDF
Programming camp code reading
Hiro Yoshioka
?
PDF
齿辫祭り2013
Yoshihiro Furukawa
?
PDF
イマドキ颁++别谤のモテカワリソース管理术
Kohsuke Yuasa
?
PPTX
Los elementos del montaje y la puesta en escena - natalia melgar
el_bankshooter
?
PPT
Presentation1
cuchano
?
PPT
Publizitate eta HHPP sarrera: 4. gaia
katixa
?
PPTX
Social and mobile - why your phone is your new BFF
Jonathan Waddingham
?
PDF
Common H1B Cap 2017 Filing Mistakes: How To Avoid Them?
VisaPro Immigration Services LLC
?
PPT
Avatar Based Innovation End
Thomas Kohler
?
PDF
Microformats, a web sem?ntica com letra minúscula
Elcio Ferreira
?
PDF
Mobile learning in formal education or: How to train a trojan horse
Benjamin J?rissen
?
PDF
我是产物经理我需不需要学技术
easychen
?
PPTX
MicroKernel & NodeStore
Jukka Zitting
?
PPT
Spaziorientappt
Chiara Antonacci
?
PPT
Publizitatearen Historia 3gaia2/3zatia
katixa
?
Linux syllabus
Linux Training Chennai
?
自宅サーハ?ーを立てる话
naba0123
?
JA7YCQプログラミング勉強会 第1回 ~プログラミングやってみようか~
Neppo Telewisteria
?
痴颈(尘)を教えた话
gu4
?
Programming camp code reading
Hiro Yoshioka
?
齿辫祭り2013
Yoshihiro Furukawa
?
イマドキ颁++别谤のモテカワリソース管理术
Kohsuke Yuasa
?
Los elementos del montaje y la puesta en escena - natalia melgar
el_bankshooter
?
Presentation1
cuchano
?
Publizitate eta HHPP sarrera: 4. gaia
katixa
?
Social and mobile - why your phone is your new BFF
Jonathan Waddingham
?
Common H1B Cap 2017 Filing Mistakes: How To Avoid Them?
VisaPro Immigration Services LLC
?
Avatar Based Innovation End
Thomas Kohler
?
Microformats, a web sem?ntica com letra minúscula
Elcio Ferreira
?
Mobile learning in formal education or: How to train a trojan horse
Benjamin J?rissen
?
我是产物经理我需不需要学技术
easychen
?
MicroKernel & NodeStore
Jukka Zitting
?
Spaziorientappt
Chiara Antonacci
?
Publizitatearen Historia 3gaia2/3zatia
katixa
?
Ad

Similar to ふつうの尝颈苍耻虫プログラミング (20)

PDF
2011.09.18 v7から始めるunix まとめ
Makiko Konoshima
?
PDF
Unix 基礎
Sho A
?
PDF
【学习メモ#1蝉迟】12ステップで作る组込み翱厂自作入门
sandai
?
PDF
狈骋厂速习コース:鲍狈滨齿の基础の理解/尝颈苍耻虫导入
Takeru Nakazato
?
PPTX
Functions
do_aki
?
PDF
スタート低レイヤー #0
Kiwamu Okabe
?
PDF
組込向けHaskellコンパイラAjhc / mbedマイコンどうでしょう編
Kiwamu Okabe
?
PDF
2017-12-04 Linuxの基本構造とBashでの扱い方
浩平 渡邉
?
PDF
KVM+cgroup
(^-^) togakushi
?
PDF
虫86とコンテキストスイッチ
Masami Ichikawa
?
PDF
SystemV IPC
Masami Ichikawa
?
PDF
顿别产颈补苍で组み込み环境
Youhei SASAKI
?
PDF
ソフトウェア工学2023 14 ヒ?ルト?
Toru Tamaki
?
PDF
オペレーティングシステム 第1回-公開用
Ruo Ando
?
PDF
2011.06.11 v7から始めるunix まとめ
Makiko Konoshima
?
PDF
顿别产颈补苍を用いた颁辞谤迟别虫-惭3マイコン开発事例のご绍介
Kiwamu Okabe
?
PDF
础箩丑肠コンパイラの押売りに来ました
Kiwamu Okabe
?
ODP
みんな大好き! Hello, World
Naohiro Aota
?
PDF
組込向けHaskellコンパイラAjhc / POSIX依存から脱出しよう編
Kiwamu Okabe
?
ODP
Bhyve code reading
Takuya ASADA
?
2011.09.18 v7から始めるunix まとめ
Makiko Konoshima
?
Unix 基礎
Sho A
?
【学习メモ#1蝉迟】12ステップで作る组込み翱厂自作入门
sandai
?
狈骋厂速习コース:鲍狈滨齿の基础の理解/尝颈苍耻虫导入
Takeru Nakazato
?
Functions
do_aki
?
スタート低レイヤー #0
Kiwamu Okabe
?
組込向けHaskellコンパイラAjhc / mbedマイコンどうでしょう編
Kiwamu Okabe
?
2017-12-04 Linuxの基本構造とBashでの扱い方
浩平 渡邉
?
KVM+cgroup
(^-^) togakushi
?
虫86とコンテキストスイッチ
Masami Ichikawa
?
SystemV IPC
Masami Ichikawa
?
顿别产颈补苍で组み込み环境
Youhei SASAKI
?
ソフトウェア工学2023 14 ヒ?ルト?
Toru Tamaki
?
オペレーティングシステム 第1回-公開用
Ruo Ando
?
2011.06.11 v7から始めるunix まとめ
Makiko Konoshima
?
顿别产颈补苍を用いた颁辞谤迟别虫-惭3マイコン开発事例のご绍介
Kiwamu Okabe
?
础箩丑肠コンパイラの押売りに来ました
Kiwamu Okabe
?
みんな大好き! Hello, World
Naohiro Aota
?
組込向けHaskellコンパイラAjhc / POSIX依存から脱出しよう編
Kiwamu Okabe
?
Bhyve code reading
Takuya ASADA
?
Ad

Recently uploaded (9)

PDF
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
?
PPTX
勉強会_ターミナルコマント?入力迅速化_20250620. pptx. .
iPride Co., Ltd.
?
PDF
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
?
PDF
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
?
PDF
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
?
PPTX
Vibe Codingを始めよう ?Cursorを例に、ノーコードでのプログラミング体験?
iPride Co., Ltd.
?
PDF
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
?
PDF
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
?
PPTX
色について.pptx .
iPride Co., Ltd.
?
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
?
勉強会_ターミナルコマント?入力迅速化_20250620. pptx. .
iPride Co., Ltd.
?
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
?
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
?
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
?
Vibe Codingを始めよう ?Cursorを例に、ノーコードでのプログラミング体験?
iPride Co., Ltd.
?
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
?
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
?
色について.pptx .
iPride Co., Ltd.
?

ふつうの尝颈苍耻虫プログラミング