• Stars
    star
    389
  • Rank 108,022 (Top 3 %)
  • Language
    C
  • License
    GNU General Publi...
  • Created over 6 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

[試して理解]Linuxのしくみ~実験と図解で学ぶOSとハードウェアの基礎知識実験プログラム

おまけ

Ubuntu20.04において動作する、本書において書かれたCプログラムをGoやPythonに移植して、かつ、コメントを日本語にしたものを各章のmiscディレクトリに入れています。一部についてはグラフ描画もしてくれるように変更しました。

必要なパッケージは以下の通り。

binutils, build-essential, golang, python3-matplotlib, python3-pil, fonts-takao

2章

3章

4章

  • sched: sched.cに対応するPythonプログラム。結果をグラフ化にして"sched-<並列度>.jpg"に保存。

以下、1CPU上でschedプログラムを動かした結果を示すグラフです。順番に1並列、2並列、3並列のものです。

sched-1.jpg sched-2.jpg sched-3.jpg

5章

6章

  • cache.go: cache.cに対応するGoプログラム。go build cache.goでビルドできる。

以下、cacheプログラムを1CPUコアあたりのL1d,L2,L3キャッシュ容量がそれぞれ32KB,512KB,4MBのCPU上で動かした結果を示すグラフです。

cache.jpg

More Repositories

1

linux-in-practice-2nd

「Linuxのしくみ 増補改訂版」の実験コードです
Python
161
star
2

elkdat

ELKDAT: easy linux kernel development and test tool
Perl
110
star
3

btrfs-thin-book

Btrfsの薄い本
104
star
4

linux-kernel-statistics

Shell
30
star
5

ld-hello

hello world written in GNU linker script
Makefile
13
star
6

stop-machine

stop machine temporarily
C
10
star
7

youtube-sample

The sample probrams of satoru-takeuchi's youtube
C
7
star
8

rook-helper

A simple Rook cluster constructor for testing
Shell
7
star
9

bash-builtin-example

C
5
star
10

test-linux-stable

tools for testing stable linux
Shell
4
star
11

gihyo-serialization-linux-in-practice

C
4
star
12

rook-demos

Shell
3
star
13

debugging-go-program-with-delve-samples

Go
3
star
14

kce21-sample

A manifests of sample Rook/Ceph cluster
Shell
3
star
15

osmpoi

An easy to use web based OpenStreetMap POI editor
JavaScript
3
star
16

kernelvm-hokuriku-part6

kernel/vm探検隊 北陸 part6で紹介した機能のソースコードです
C
2
star
17

hello-world-web-server

a web server which just returns "hello world"
Dockerfile
2
star
18

git-binignore

add binary executables and shared objects to .gitignore
Shell
2
star
19

optical-drive-panic

Fancy and thrilling game to save your system from panic
Shell
2
star
20

oss-dev-files

files for OSS development for example the case that mails with images are considered as SPAM
1
star
21

markdown-viewer

Go
1
star
22

the-first-code

Go
1
star
23

engineerhub-article-sample

Go
1
star
24

test

test
1
star
25

sched-behavior

Observe process scheduler's behavior
C
1
star
26

memalign

allocate aligned memory
1
star
27

kernelvm-online-part3-infinite-storage

Shell
1
star
28

tlpi_ans

answers of practices in The Linux Programming Interface
C
1
star
29

deepthought

HTML
1
star
30

inline-vs-macro

Compare the build time between inline function and macro
Shell
1
star
31

placemat-menu

configuration tool for placemat
Go
1
star
32

rook-test

Shell
1
star
33

simple-screencast

a screencast program written in simple bash script
Shell
1
star
34

livadevbox

Testing SynQuacer 96Boards BOX
1
star
35

sd-special-issue-low-layer-sample

C++
1
star
36

satcc

a c compiler
1
star