mirror of
https://github.com/cs341-illinois/coursebook.git
synced 2026-10-01 23:54:40 +08:00
Merge pull request #221 from cs341-illinois/fix-dead-links
Fix dead external links in the coursebook
This commit is contained in:
@@ -671,7 +671,7 @@ Thus, in practice, surrounding critical sections with a mutex lock and unlock ca
|
||||
For further reading, we suggest the following web post that discusses implementing Peterson's algorithm on an x86 process and the Linux documentation on memory barriers.
|
||||
\begin{enumerate}
|
||||
\item \href{http://bartoszmilewski.com/2008/11/05/who-ordered-memory-fences-on-an-x86/}{Memory Fences}
|
||||
\item \href{http://lxr.free-electrons.com/source/Documentation/memory-barriers.txt}{Memory Barriers}
|
||||
\item \href{https://www.kernel.org/doc/Documentation/memory-barriers.txt}{Memory Barriers}
|
||||
\end{enumerate}
|
||||
|
||||
|
||||
|
||||
@@ -243,7 +243,7 @@ For this, we require sshfs which has ports on many different machines.
|
||||
|
||||
\begin{enumerate}
|
||||
\item Windows \url{https://github.com/billziss-gh/sshfs-win}
|
||||
\item Mac \url{https://github.com/osxfuse/osxfuse/wiki/SSHFS}
|
||||
\item Mac \url{https://web.archive.org/web/20240913220726/https://github.com/osxfuse/osxfuse/wiki/SSHFS}
|
||||
\item Linux \url{https://help.ubuntu.com/community/SSHFS}
|
||||
\end{enumerate}
|
||||
|
||||
|
||||
@@ -1144,7 +1144,7 @@ Services must survive single disk, rack of servers, or whole data center failure
|
||||
|
||||
\subsection{Solutions}
|
||||
Simple redundancy (2 or 3 copies of each file) e.g., Google GFS (2001).
|
||||
More efficient redundancy (analogous to RAID 3++) e.g., \href{http://goo.gl/LwFIy}{Google Colossus filesystem} (\textasciitilde{}2010): customizable replication including Reed-Solomon codes with 1.5x redundancy
|
||||
More efficient redundancy (analogous to RAID 3++) e.g., \href{https://web.archive.org/web/20160910131226/http://static.googleusercontent.com/media/research.google.com/en/us/university/relations/facultysummit2010/storage_architecture_and_challenges.pdf}{Google Colossus filesystem} (\textasciitilde{}2010): customizable replication including Reed-Solomon codes with 1.5x redundancy
|
||||
|
||||
\section{Simple Filesystem Model}
|
||||
|
||||
|
||||
+1
-1
@@ -438,7 +438,7 @@ int s = (requested_bytes + tag_overhead_bytes + 15) / 16
|
||||
\end{lstlisting}
|
||||
|
||||
The additional constant ensures incomplete units are rounded up. Note, real code is more likely to symbol sizes e.g. \keyword{sizeof(x)\ -\ 1}, rather than coding numerical constant 15.
|
||||
\href{http://www.ibm.com/developerworks/library/pa-dalign/}{Here's a great article on memory alignment, if you are further interested}
|
||||
\href{https://web.archive.org/web/20190313121701/https://www.ibm.com/developerworks/library/pa-dalign/}{Here's a great article on memory alignment, if you are further interested}
|
||||
|
||||
Another added effect could be internal fragmentation happens when the given block is larger than their allocation size.
|
||||
Let's say that we have a free block of size 16B (not including metadata).
|
||||
|
||||
@@ -436,7 +436,7 @@ For example, we haven't talked about \keyword{setsockopt} which can manipulate o
|
||||
You can also mess around with lower protocols as the kernel provides primitives that contribute to this.
|
||||
Note that you need to be root to create a raw socket.
|
||||
Also, you need to have a lot of ``set up'' or starter code, be prepared to have your datagrams be dropped due to bad form as well.
|
||||
For more information see this \href{http://www.beej.us/guide/bgnet/output/html/multipage/getaddrinfoman.html}{guide}.
|
||||
For more information see this \href{https://beej.us/guide/bgnet/html/split/man-pages.html#getaddrinfoman}{guide}.
|
||||
|
||||
\subsection{Sending some data}
|
||||
|
||||
|
||||
@@ -163,7 +163,7 @@ Lessons Learned: Get an antivirus and/or apparmor and make sure that an applicat
|
||||
|
||||
Required Sections: Intro to C
|
||||
|
||||
\href{https://www.geek.com/games/why-gandhi-is-always-a-warmongering-jerk-in-civilization-1608515/}{Ghandi's Aggressiveness}
|
||||
\href{https://web.archive.org/web/20191216004115/https://www.geek.com/games/why-gandhi-is-always-a-warmongering-jerk-in-civilization-1608515/}{Ghandi's Aggressiveness}
|
||||
|
||||
This is probably well known to gamers why someone as (in real life) non-violent as Ghandi was aggressive in the video game civilization.
|
||||
In the original, the game kept aggressiveness as an unsigned integer.
|
||||
|
||||
Reference in New Issue
Block a user