Skip to content

Instantly share code, notes, and snippets.

@adyavanapalli
Created August 12, 2019 03:09
Show Gist options
  • Save adyavanapalli/55dffc51cfef38eac2d6b71b0712502a to your computer and use it in GitHub Desktop.
Save adyavanapalli/55dffc51cfef38eac2d6b71b0712502a to your computer and use it in GitHub Desktop.
Download OSTEP Book
#!/usr/bin/env bash
# download_book.sh
# - Downloads all chapters from the OSTEP website and creates a single PDF.
while read -r dest src; do
wget "$src" -O "$dest" &
done < files.txt
wait
pdfunite {01..61}.pdf OSTEP.pdf
rm {01..61}.pdf
01.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/preface.pdf
02.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/toc.pdf
03.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dialogue-threeeasy.pdf
04.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/intro.pdf
05.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dialogue-virtualization.pdf
06.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-intro.pdf
07.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-api.pdf
08.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-mechanisms.pdf
09.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched.pdf
10.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched-mlfq.pdf
11.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched-lottery.pdf
12.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched-multi.pdf
13.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-dialogue.pdf
14.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dialogue-vm.pdf
15.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-intro.pdf
16.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-api.pdf
17.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-mechanism.pdf
18.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-segmentation.pdf
19.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-freespace.pdf
20.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-paging.pdf
21.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-tlbs.pdf
22.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-smalltables.pdf
23.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-beyondphys.pdf
24.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-beyondphys-policy.pdf
25.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-complete.pdf
26.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vm-dialogue.pdf
27.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dialogue-concurrency.pdf
28.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/threads-intro.pdf
29.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/threads-api.pdf
30.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/threads-locks.pdf
31.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/threads-locks-usage.pdf
32.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/threads-cv.pdf
33.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/threads-sema.pdf
34.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/threads-bugs.pdf
35.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/threads-events.pdf
36.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/threads-dialogue.pdf
37.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dialogue-persistence.pdf
38.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-devices.pdf
39.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-disks.pdf
40.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-raid.pdf
41.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-intro.pdf
42.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-implementation.pdf
43.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-ffs.pdf
44.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-journaling.pdf
45.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-lfs.pdf
46.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-ssd.pdf
47.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-integrity.pdf
48.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/file-dialogue.pdf
49.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dialogue-distribution.pdf
50.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dist-intro.pdf
51.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dist-nfs.pdf
52.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dist-afs.pdf
53.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dist-dialogue.pdf
54.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dialogue-vmm.pdf
55.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/vmm-intro.pdf
56.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dialogue-monitors.pdf
57.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/threads-monitors.pdf
58.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/dialogue-labs.pdf
59.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/lab-tutorial.pdf
60.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/lab-projects-systems.pdf
61.pdf http://pages.cs.wisc.edu/~remzi/OSTEP/lab-projects-xv6.pdf
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment