<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Operating System | Ifkarsyah</title><link>https://ifkarsyah.tech/tags/operating-system/</link><atom:link href="https://ifkarsyah.tech/tags/operating-system/index.xml" rel="self" type="application/rss+xml"/><description>Operating System</description><generator>Source Themes Academic (https://sourcethemes.com/academic/)</generator><language>en-us</language><lastBuildDate>Mon, 10 Aug 2020 00:00:00 +0000</lastBuildDate><image><url>img/map[gravatar:%!s(bool=false) shape:circle]</url><title>Operating System</title><link>https://ifkarsyah.tech/tags/operating-system/</link></image><item><title>Book Notes: Operating System: Three Easy Pieces</title><link>https://ifkarsyah.tech/post/notes-os-three-easy-pieces/</link><pubDate>Mon, 10 Aug 2020 00:00:00 +0000</pubDate><guid>https://ifkarsyah.tech/post/notes-os-three-easy-pieces/</guid><description>&lt;p>&lt;a href="https://www.student.cs.uwaterloo.ca/~cs350/F14/reading.html">https://www.student.cs.uwaterloo.ca/~cs350/F14/reading.html&lt;/a>&lt;/p>
&lt;h2 id="part-1-virtualizing-the-cpu">Part 1: Virtualizing the CPU&lt;/h2>
&lt;p>Virtualizing the CPU means creating illusion such that each application think it has its own CPU to use,
although there&amp;rsquo;s only one.&lt;/p>
&lt;hr>
&lt;h3 id="ch-1-process-kernel-system-calls">Ch 1: Process, Kernel, System Calls&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-intro.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-intro.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-api.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-api.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-mechanisms.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-mechanisms.pdf&lt;/a>&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="ch-2-scheduling">Ch 2: Scheduling&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched-mlfq.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched-mlfq.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched-lottery.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched-lottery.pdf&lt;/a>&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="part-2-virtualizing-the-memory">Part 2: Virtualizing the Memory&lt;/h2>
&lt;hr>
&lt;h3 id="ch-1-virtual-memory">Ch 1: Virtual Memory&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/vm-intro.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/vm-intro.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/vm-api.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/vm-api.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/vm-mechanism.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/vm-mechanism.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/vm-segmentation.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/vm-segmentation.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/vm-paging.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/vm-paging.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/vm-tlbs.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/vm-tlbs.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/vm-smalltables.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/vm-smalltables.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/vm-beyondphys.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/vm-beyondphys.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/vm-beyondphys-policy.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/vm-beyondphys-policy.pdf&lt;/a>&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="part-3-concurrency">Part 3: Concurrency&lt;/h2>
&lt;hr>
&lt;h3 id="ch1-threads">Ch1: Threads&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/threads-intro.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/threads-intro.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/threads-api.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/threads-api.pdf&lt;/a>&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="ch2-synchronization">Ch2: Synchronization&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/threads-locks.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/threads-locks.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/threads-locks-usage.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/threads-locks-usage.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/threads-cv.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/threads-cv.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/threads-sema.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/threads-sema.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/threads-bugs.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/threads-bugs.pdf&lt;/a>&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="part-4-persistance">Part 4: Persistance&lt;/h2>
&lt;hr>
&lt;h3 id="ch-1-filesystem">Ch 1: Filesystem&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/file-intro.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/file-intro.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/file-implementation.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/file-implementation.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/file-journaling.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/file-journaling.pdf&lt;/a>&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="ch-2-io">Ch 2: IO&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/file-devices.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/file-devices.pdf&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pages.cs.wisc.edu/~remzi/OSTEP/file-disks.pdf">http://pages.cs.wisc.edu/~remzi/OSTEP/file-disks.pdf&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="part-5-security">Part 5: Security&lt;/h2></description></item></channel></rss>