---
# System prepended metadata

title: CSAPP 讀書會
tags: [CSAPP]

---

# CSAPP 讀書會
###### tags: `CSAPP`

## 進度
依照[課程進度](http://www.cs.cmu.edu/~213/schedule.html)
[lab2 及之後的 labs](http://csapp.cs.cmu.edu/3e/labs.html)


## Host
:::info
Host's job
整理 lab
整理課程內容
找出當週要看的影片
:::
|Date|Host|Topic|Youtube link|assignment Due |Reading|
|-|-|-|-|-|-|
|3/25|justapig9020|Bits, Bytes, Integers|Bits, Bytes, Integers|
|4/10|inwater0929|Bits, Bytes, & Integers II<br>Machine Prog: Basics|[video1](https://www.youtube.com/watch?v=rFkQyULQQOg&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=3&ab_channel=RobbieZhou) <br> [video2](https://www.youtube.com/watch?v=aRV8beB29Dk&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=4)<br>[video3](https://www.youtube.com/watch?v=ViP6V-U4y8M&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=5)|	L0 due<br>	L2 (bomblab) out |2.2-3.5|
|4/24|inwater0929|Machine Prog: Control/ Procedures|[video1](https://www.youtube.com/watch?v=LqSN8OOdLQw&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=6)<br>[video2](https://www.youtube.com/watch?v=A2JFx93ANHs&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=7)<br>|L1 due|3.6-3.7|
|week4|105d|Machine Programming (Data,Advanced)|[video1](https://www.youtube.com/watch?v=nLIhml8ni-A&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=9)<br>[video2](https://www.youtube.com/watch?v=V6bY22KZbRc&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=10&t=2s)
|week5|cweitso|The Memory Hierarchy & Cache Memories|[video1](https://www.youtube.com/watch?v=FDBqMES--TY&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=11)<br>[video2](https://www.youtube.com/watch?v=AauOs6vq9yI&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=12)
|week6|atim0806|Design and Debugging & Code Optimization|[video1](https://www.youtube.com/watch?v=FblqVNY5N58&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=21)<br>[video2](https://www.youtube.com/watch?v=T5DxuF4_uRs&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=10)
|week7|justapig9020|Dynamic Memory Allocation: Basic / Advanced||L4|
|week8|105d|Linking,Virtual Memory Concepts|[video1](https://www.youtube.com/watch?v=mO9l0n3BmLw&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=15)<br>[video2](https://www.youtube.com/watch?v=Fy9cnP9TXUc&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=19&t=4s)
|week9|cweitso|Virtual Memory: Systems & ECF: Exceptions & Processes|[video1](https://www.youtube.com/watch?v=lu1B1faqpUw&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=19)<br>[video2](https://www.youtube.com/watch?v=79yH0NeoEv4&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=15)
|week10|atim0806|ECF: Signals &System Level I/O|[video1](https://www.youtube.com/watch?v=zc96AQLPrGY&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=16)<br>[video2](https://www.youtube.com/watch?v=vaOT9KeIUDk&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=17)
|week11||Network Programming, Concurrent Programming|
|week12||Synchronization, Parallelism|


## 環境架設
1. 照網頁步驟做
[Docker架設教學+csapp lab安裝](https://zhuanlan.zhihu.com/p/379328928)
2. 打開docker的gui打開 到image 點csapp 按run
![](https://i.imgur.com/NFEbfDb.jpg)
3. 打開cmd 輸入docker exec -it csapp-container /bin/bash 就進去了，如下圖
![](https://i.imgur.com/x1UV0x4.jpg)
4. 在cmd輸入以下指令
cd
![](https://i.imgur.com/muD8vxl.jpg)
sudo apt update
sudo apt install wget
wget https://www.cs.cmu.edu/afs/cs/academic/class/15213-s22/www/labs/cprogramminglab-handout.tar
tar xvf cprogramminglab-handout.tar
sudo apt install clang -y
出現這個畫面就代表你完成了
![](https://i.imgur.com/5tVB9cw.png)
cd cprogramminglab-handout
接著你就可以開始寫L0的作業了

## 實驗記錄
### Lab0
- [justapig9020](https://hackmd.io/@justapig9020/BJENJTGGc)

### LAB 1
- [justapig9020](https://hackmd.io/@justapig9020/B1VUv6wX9)
- [inwater0929](https://hackmd.io/uBMkOS9tQCamxXT8-bwENQ)

### LAB 2
- [justapig9020](https://hackmd.io/@justapig9020/H1kSKVdmq)
- [inwater0929](https://hackmd.io/DR0QMRFyQjuRA-l6y6S90g)

### LAB 3
- [justapig9020](https://hackmd.io/@justapig9020/HyCMKwBN9)

### LAB 4
- [justapig9020](https://hackmd.io/@justapig9020/ByO3iqvL9)

## 參考資料
[課程影片(簡中字)](https://www.youtube.com/watch?v=ScMxnXq6fbI&list=PLcQU3vbfgCc9sVAiHf5761UUApjZ3ZD3x&index=1&t=1s)
[CSAPP(pdf)](https://github.com/Sorosliu1029/CSAPP-Labs/blob/master/Computer%20Systems%20A%20Programmers%20Perspective%20(3rd).pdf)
[簡體書](https://github.com/3masterplus/book/blob/master/%E3%80%901%E3%80%91%E6%B7%B1%E5%85%A5%E7%90%86%E8%A7%A3%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%B3%BB%E7%BB%9F(%E4%B8%AD%E6%96%87%E7%89%88).pdf)