From efbb008c0636e0163c9da416d0604f617d5542e7 Mon Sep 17 00:00:00 2001
From: Andre Noll cat > foo &
. Note that the cat process automatically
receives the STOP signal. Run rm foo; ls -ltra
. Read
- section D2 of the nfs HOWTO
+ section D2 of the nfs HOWTO
for the explanation. { while :; do echo; sleep
@@ -1441,7 +1441,7 @@ EXERCISES()
The file handle which an nfs client received through some earlier
-rpc can become invalid at any time due to operations on a different
+rpc can become invalid at any time due to operations on different
hosts. This happens, for example, if the file was deleted on the server
or on a different nfs client, or when the directory that contains
the file is no longer exported by the server due to a configuration
--
2.39.2
From c8dbbdc20bbcf726672198332ecbda1b3ae642e8 Mon Sep 17 00:00:00 2001
From: Andre Noll
A bridge can accommodate physical devices like eth0
-as well as virtual devices. On Linux systems the common approach
-to equip virtual machines with network interfaces employs the
-virtual ethernet (veth) device driver. This driver provides
-virtual pairs of devices where each pair represents an ethernet
-tunnel. Ethernet frames received by one end appear on its pair. To
-set up the network interface for a virtual machine, one end of the
-pair is added to a bridge on the host system while the other end
-represents the ethernet device of the virtual machine.
A bridge can accommodate physical devices as well as virtual +devices. On Linux systems the common approach to equip virtual machines +with network interfaces employs the virtual ethernet device +driver, veth. This driver provides virtual pairs of devices where +each pair represents an ethernet tunnel. Ethernet frames received +by one end appear on its peer. To set up the network interface for +a virtual machine, one end of the pair is added to a bridge on the +host system while the other end represents the ethernet device of +the virtual machine.
EXERCISES()The protocols of the transport layer provide message transfer services -which are on one hand independent of the underlying network type, -and on the other hand independent of the application. Different -network services on running on the same host are distinguished by - port numbers, which are 16 bit identifiers. Several well +
The protocols of the transport layer provide message transfer +services which are on one hand independent of the underlying network +type, and on the other hand independent of the application. Different +network services running on the same host are distinguished by +port numbers, which are 16 bit identifiers. Several well known port numbers are are associated with specific applications. The two dominant transport layer protocols on top of IP, TCP and UDP, are discussed in the following subsections.
-- 2.39.2 From f2c84ee322431aaf9cce469c66c9d9aa619bc3fe Mon Sep 17 00:00:00 2001 From: Andre NollLOGO() | -
+
ifelse(«$3», «», «
substr(translit(«$2», «_», « »), 0, index(«$2», .m4))
», «
@@ -76,28 +72,26 @@ define(«HEADER», «
»)
define(«TABLE_OF_CONTENTS», «
- |
Chapter | +Section | +
---|---|
+ TABLE_OF_CONTENTS(«chapter_list») + | divert(«1») - + | +
The same companies which almost killed Unix by commercializing it
in order to maximize their profit make money with Linux today. However,
--
2.39.2
From c03deda9d239c1ade70406414855b34808b2d3a4 Mon Sep 17 00:00:00 2001
From: Andre Noll
The success of Linux, or GNU/Linux as some prefer to -call it for reasons that should now be clear, has only increased -over time, to the point where commercial Unix systems are mostly -irrelevant. Today Linux runs on a wide variety of machines ranging -from supercomputers to workstations, smart phones and IOT (internet -of things) devices with very limited resources.
- -The same companies which almost killed Unix by commercializing it -in order to maximize their profit make money with Linux today. However, -they had to adjust their business model in order to comply with the -GPL. Rather than selling proprietary software, they bundle open source -software and sell support to paying customers. Some companies also -sell hardware with Linux pre-installed.
+call it for reasons that should now be clear, steadily increased over +time. In 2003 the SCO group, a company which sold a proprietary Unix +system, was unhappy about this progress and sued IBM, which offered +various Linux products. SCO claimed to be the owner of Unix, and that +Linux contained "millions of lines" of code copied from Unix. SCO's +lawyers argued that the success of Linux originated from this theft +of intellectual property and asked for $5 billion as compensation +for the resulting losses. The company also tried to collect taxes +from other Linux users. Microsoft funded SCO in these efforts. + +In the end SCO lost the lawsuit since it was evident that all that +copied code never existed. In fact, the court ruled that SCO did not +even own the Unix copyrights to begin with. Another fun fact is that +the large number of bugs in the early Linux code actually helped to +prove that Linux was original work. The long term effects of this +lawsuit, an improved position of Linux and its ecosystem, last until +the presence. Commercial Unix systems have become irrelevant as Linux +runs on a wide variety of machines ranging from supercomputers to +workstations, smart phones and IOT (internet of things) devices with +very limited resources.
+ +While SCO went bankrupt eventually, some of the companies which +almost killed Unix by maximizing their own profit still exist, and +make money with Linux today. However, they had to adjust their +business model in order to comply with the GPL. Rather than selling +proprietary software, they bundle open source software and sell +support to paying customers. Some companies also sell hardware with +Linux pre-installed.
SUBSECTION(«Linux Distributions») @@ -2510,6 +2526,9 @@ SECTION(«Further Reading») href="https://www.newyorker.com/business/currency/the-gnu-manifesto-turns-thirty"> The GNU Manifesto Turns Thirty, by Maria Bustillos. + sections.
At least with some versions of firefox, they appear way too small.
---
include/css/aple.css | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/include/css/aple.css b/include/css/aple.css
index da4c70c..bb5544e 100644
--- a/include/css/aple.css
+++ b/include/css/aple.css
@@ -18,6 +18,10 @@ h3 {
font-size: 110%;
}
+code {
+ font-size: 130%;
+}
+
p {
padding: 0px 0px 0px 0px;
}
--
2.39.2
From e3d07bb6a8812614b8ae4a5279677d5f4c2b521b Mon Sep 17 00:00:00 2001
From: Andre Noll
Date: Fri, 29 Dec 2023 12:02:37 +0100
Subject: [PATCH 11/16] LVM: Trivial formatting fix.
The term "device" was not formatted properly due to a missing
and
.
---
LVM.m4 | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/LVM.m4 b/LVM.m4
index bf13076..abd8243 100644
--- a/LVM.m4
+++ b/LVM.m4
@@ -837,12 +837,12 @@ EXERCISES()
target_args
. Determine the correct values for the first three
arguments to encrypt /dev/loop0
.
- target_args
for the dm-crypt target are
- of the form cipher key iv_offset device offset
. To
- encrypt /dev/loop0
with AES-256, cipher
- is aes
, device is /dev/loop0
and both
- offsets are zero. Come up with an idea to create a 256 bit key from
- a passphrase. target_args
for the dm-crypt target are
+ of the form cipher key iv_offset device offset
. To
+ encrypt /dev/loop0
with AES-256, cipher
+ is aes
, device
is /dev/loop0
+ and both offsets are zero. Come up with an idea to create a 256 bit
+ key from a passphrase. create
subcommand of dmsetup(8)
creates a device from the given table. Run a command of
--
2.39.2
From be750347503fa460c4af938f5615d973abc8b7bc Mon Sep 17 00:00:00 2001
From: Andre Noll At this time of writing (2018-11) there exist two different sets -of schedulers: the traditional single-queue schedulers and the -modern multi-queue schedulers, which are expected to replace the -single-queue schedulers soon. The three single-queue schedulers, -noop, deadline and cfq (complete fair queueing), were designed for -rotating disks. They reorder requests with the aim to minimize seek -time. The newer multi-queue schedulers, mq-deadline, kyber, and bfq -(budget fair queueing), aim to max out even the fastest devices. As -implied by the name "multi-queue", they implement several request -queues, the number of which depends on the hardware in use. This -has become necessary because modern storage hardware allows multiple -requests to be submitted in parallel from different CPUs. Moreover, -with many CPUs the locking overhead required to put a request into -a queue increases. Per-CPU queues allow for per-CPU locks, which -decreases queue lock contention.
+Traditionally, the schedulers were designed for rotating disks. +They implemented a single request queue and reordered the queued +I/O requests with the aim to minimize disk seek times. The newer +multi-queue schedulers mq-deadline, kyber, and bfq (budget fair +queueing) aim to max out even the fastest devices. As implied by +the name "multi-queue", they implement several request queues, +the number of which depends on the hardware in use. This has become +necessary because modern storage hardware allows multiple requests +to be submitted in parallel from different CPUs. Moreover, with many +CPUs the locking overhead required to put a request into a queue +increases. Per-CPU queues allow for per-CPU locks, which decreases +queue lock contention.
We will take a look at some aspects of the Linux block layer and on
the various I/O schedulers. An exercise on loop devices enables the
--
2.39.2
From 6db5ba9acf7487b4fad592445e74bdb516d7f9c7 Mon Sep 17 00:00:00 2001
From: Andre Noll The pipe(2)
system call takes no arguments and
creates two file descriptors for the calling process which are tied
-together as a unidirectional first in, first out data channel that
-works just like a fifo, but without any files being involved. One
+together as a unidirectional first in, first out data channel. One
file descriptor is the read end of the pipe, the other is
the write end. Data written to the write end is buffered by
the kernel and can be obtained by reading from the read end.
This approach depends on file descriptor inheritance across
+fork(2)
, so it does not work in the situation
+where neither process is an ancestor of the other. Files of
+type fifo (named pipes) overcome this restriction. To
+establish a connection between two unrelated processes,
+both processes call open(2)
to obtain a file
+descriptor which is associated with the fifo. One process passes
+the O_WRONLY
flag to open the file for writing while
+the other passes O_RDONLY
to open it for reading. The
+two processes may then communicate in the same way as with the
+pipe(2)/fork(2)
approach.
The POSIX dup(2)
and dup2(2)
system
calls allow a process to manipulate the entries of its file descriptor
array. In particular the standard file descriptors 0, 1, and 2 can be
@@ -1827,12 +1838,6 @@ with wc(1)
. Since ls(1)
writes to stdout
and wc(1)
reads from stdin, wc(1)
processes
the output of ls(1)
.
Note that this trick does not work to establish a connection
-between two existing processes because it depends on file
-descriptor inheritance across fork(2)
. In the general
-case one has to fall back to sockets or fifos to create the data
-channel.
The POSIX standard requires a compliant Unix system to provide
--
2.39.2
From d96d1a6c9eb3100b4b2474a39c73ac0f72f66fea Mon Sep 17 00:00:00 2001
From: Paul Menzel
The title is of course a pun on the famous book "Advanced -Programming in the Unix Environment" by W. Richard Stevens. While +
The title is of course a pun on the famous book Advanced
+Programming in the Unix Environment by W. Richard Stevens. While
Stevens' book centers around C programming, we try to convey
fundamental ideas without assuming substantial programming skills.
An elementary knowledge of shell and C programming is certainly
--
2.39.2
From 2fd11be1694c227e7df4bacbfee84df80d9be2eb Mon Sep 17 00:00:00 2001
From: Paul Menzel open, read
, and write
should
-mean for these devices.
+describe what open
, read
, and write
+should mean for these devices.
», «
@@ -570,9 +570,10 @@ printers could return the number of paper trays, the amount of toner
left etc. Writing to the file descriptor would cause output on the
device. This would mean to print the text that is written, play the
audio samples, or show the given text on the display. The point to
-take away is that the open, read, write
interface is a
-generic concept that works for different kinds of devices, not only
-for storing data in a file on a hard disk.
+take away is that the open
, read
,
+write
interface is a generic concept that works for
+different kinds of devices, not only for storing data in a file on a
+hard disk.
»)
--
2.39.2