The overwhelming majority of paintings of interiors show rooms we might aspire to. In this last of the series, I show some we’d all hope to avoid, those of the poor and destitute. Although never really popular as motifs, there have always been a few artists prepared to tackle the ills and inequalities in society, and this became increasingly frequent in the 1880s.
David Teniers the Younger (1610–1690), The Dice Shooters (1630-50), oil on panel, 45 × 59 cm, Rijksmuseum Amsterdam, Amsterdam, The Netherlands. Wikimedia Commons.
In common with other paintings of inns in the Dutch Golden Age, David Teniers the Younger’s The Dice Shooters (1630-50) is set in a dingy room in a rough tavern. Drawing on their clay pipes and with glasses of beer in hand, a group of men appear completely absorbed in gambling their large stacks of coins on the throw of their dice.
Bartolomé Esteban Murillo (1617–1682), The Young Beggar (c 1645), oil on canvas, 134 x 100 cm, Musée du Louvre, Paris. Wikimedia Commons.
Bartolomé Esteban Murillo is one of the earliest artists to have paid particular attention to the poor. The Young Beggar, painted in about 1645, shows a young boy squatting in a tiny bare nook in a building. By his filthy feet is a bag full of rotting fruit, and some sort of worms, which apparently form his diet.
François-Auguste Biard (1799–1882), In a Mountain Hut (date not known), oil on paper mounted on canvas, 31 × 37 cm, location not known. Wikimedia Commons.
François-Auguste Biard’s undated sketchy view In a Mountain Hut may have been made in front of the motif, onto paper. This is unusually social realist for this artist, showing the abject poverty and spartan conditions of many who lived in the more remote areas of France at that time.
It was the Naturalist paintings of Jules Bastien-Lepage in the early 1880s that brought depictions of the poor to success in the Salon.
Jules Bastien-Lepage (1848-1884), The Little Chimneysweep (Damvillers) (1883), oil on canvas, 102 x 116 cm, location not known. Wikimedia Commons.
Typical of his portraits is The Little Chimneysweep (Damvillers), one of his last paintings, completed in 1883. This young chimneysweep sitting in his tiny hovel with a stray cat and kitten has the air of authenticity. The hand grasping that slab of bread is still black with soot. Bastien painted this in his home village in northern France.
Antonino Gandolfo (1841–1910), Compensation (1880-85), oil on canvas, 84 x 51 cm, location not known. Image by Luigi Gandolfo, via Wikimedia Commons.
Antonino Gandolfo’s Compensation (1880-85) depicts prostitution in the city of Catania on the east coast of the island of Sicily, Italy. The man settling his bill is only seen by his hand holding out money, and a foot. The young woman holding out her hand to receive looks away in shame, and wears scarlet to advertise her trade.
Antonino Gandolfo (1841–1910), The Last Coin (c 1880-85), oil on canvas, 85 x 65 cm, location not known. Image by Luigi Gandolfo, via Wikimedia Commons.
We remain in the poor quarter of Catania for Gandolfo’s The Last Coin (c 1880-85). A young woman, who has been spinning, sits on an old chest and takes the last money from her purse, presumably to pay for some milk to fill her blue and white jug. Her family stand with their heads bowed in the gloom behind.
Vincent van Gogh (1853–1890), The Potato Eaters (1885), oil on canvas, 82 × 114 cm, Van Gogh Museum, Amsterdam, The Netherlands. Wikimedia Commons.
Vincent van Gogh’s early paintings of Nuenen, such as The Potato Eaters from April 1885, depict poor peasant families, here eating inside their dingy cottage lit by a single oil lamp.
Arturo Michelena (1863–1898), Charity (1888), oil on canvas, 288.8 x 231.7 cm, Galería de Arte Nacional, Caracas, Venezuela. Wikimedia Commons.
Arturo Michelena’s Charity from 1888 shows a pair of charitable bourgeois ladies arriving at the hovel that is home to a young mother and her small child. Beside the woman, on a small table under the window, are a couple of bottles of her favourite ‘poison’, quite likely absinthe.
For the last nine years, Apple silicon chips in iPhones and iPads, and most recently Macs since 2020, have had Efficiency cores, designed to eke out their use of power to extend battery time and stay cool. Although you have no control over what runs on the Efficiency cores in a device, there are options for Macs. This article explains how you can reduce energy use in an Apple silicon Mac, and why that’s a good idea.
M series chips can have between 2 and 8 E cores, each with slightly less than half the processing power of their Performance core equivalent. If you’re unsure how many CPU cores of each type your Mac has, and how they’re used, open the CPU History window in Activity Monitor and watch.
Particularly in the first few minutes after starting a Mac up, the E cores will be busy catching up with their housework, routine tasks such as updating Spotlight’s indexes, checking for various updates, and making an initial backup. Once those are out of the way, you’ll see other bursts of activity, such as XProtect Remediator scans, and a steady trickle of background tasks. Because most user processes are run on the P cores, even hectic E core activity has no effect on what you’re doing.
When threads run on the E cores, they run more slowly, take longer to complete, and for all that take substantially less energy and power. That’s because those cores are designed to be more energy-efficient and are run at lower frequencies, or clock speeds. For almost any given task, running its threads on E cores will thus use less total energy, and
run a laptop Mac’s battery down less,
generate less heat, so keep the Mac cooler,
leave the P cores free for more pressing work.
In-app controls
Although the code run by apps can’t be directly allocated to P or E cores, macOS can get a strong hint by a setting known as the Quality of Service (QoS). By default, the whole of a user app will normally be run at high QoS, and macOS will try to do that on P cores, so long as they’re available.
Some apps are starting to give the user control over this in a ‘speed control’. Among those is the compression utility Keka.
In Keka’s settings, you can give its tasks a maximum number of threads, and even run them at custom Quality of Service (QoS) if you want them to be run in the background on E cores, and not interrupt your work on P cores. Although you’re unlikely to do this when compressing or decompressing a few small files, when its tasks are likely to take several minutes, and you can afford to wait a little longer, run them on the E cores.
a red racing car for top priority on P cores when possible;
a blue truck for medium priority on P cores when possible;
a green tortoise for the E cores.
The first two of those took 6.2 seconds to check a 16.8 GB file, and the third took almost 25 seconds. The difference between the first two is in their priority, if there are several threads competing for the same CPU cores. If you’re waiting for files to be checked in Dintch, set the speed control at the racing car, but if you can leave the Mac to get on with checking in the background and want the efficiency of E cores, set the control to the tortoise instead.
Cormorant, a much simpler compression utility aimed at AirDrop transfers, has a fourth slider position with a pointing hand that allows you to set a custom number of threads and QoS level, as I also use that to test and compare P and E cores.
Activity Monitor
You can observe the effects of these controls in Activity Monitor’s CPU History window.
Here’s the window after Dintch has checked that 16.8 GB file with the setting for the racing car. All the P cores show four bursts of activity as they run the code to compute the SHA256 digest.
When set to the tortoise, there’s almost no activity on the P cores, but the four E cores are busy computing for nearly 25 seconds.
One word of caution about over-interpreting what you see in the CPU History window. Both P and E cores can run at a wide range of frequencies, but Activity Monitor takes no account of that. Taken at face value, you might think these E cores were working far harder than the P cores, but in fact they were only running at low frequency, little more than idle. In contrast, those small bursts of P core activity were at higher frequency, so were using far greater energy and power, albeit more briefly.
Other apps
I’m sure that other apps are offering the user control over whether their longer tasks are run on the E cores, and will be pleased to learn of them. There are also two ways that you can control them yourself, using St. Clair Software’s excellent utility App Tamer, or the command tool taskpolicy.
App Tamer works best with apps, and makes it simple to demote their threads so they’re run on E cores in the background. If you want to demote the threads of a running process from Terminal, use a command like taskpolicy -b -p 567
to confine all threads of the process with PID 567 to the E cluster. You can then reverse that using the -B option for threads with higher QoS, but can’t alter those set to a low QoS by the process. The ground rule here is that high QoS threads can be demoted to the E cores, but low QoS threads can’t be promoted to run on the P cores.
What to avoid
Running a virtual machine on an Apple silicon Mac always uses P cores first, even though they will also be used to run background threads inside the VM. So the worst thing you can do in terms of energy efficiency and core use is to run code inside a VM.
Summary
Run task threads on E cores for better battery endurance, lower heat production, and to keep other apps more responsive.
Where an app provides a control, use it to run long tasks in the background, on the E cores.
For apps that don’t, use App Tamer. For processes use the taskpolicy command tool.
A century ago today, on 17 July 1925, the great German artist Lovis Corinth died. To complete this series commemorating his career and art, I show a selection of the best of his narrative paintings. Some modern art historians claim that narrative painting died during the nineteenth century, but that certainly didn’t apply to Corinth.
Lovis Corinth (1858–1925), Susanna Bathing (Susanna and the Elders) (1890), oil on canvas, 159 x 111.8 cm, Private collection. Wikimedia Commons.
Corinth’s first really successful narrative paintings were the two that he made in 1890, showing the Old Testament story of Susanna and the Elders, a subject he returned to as late as 1923. Identical in their composition, they have an unusual setting, as this scene of the two elders acting as voyeurs is more commonly shown in Susanna’s garden, or even woodland, as described in the original story.
Lovis Corinth (1858–1925), The Temptation of Saint Anthony (1897), oil on canvas, 88 × 107 cm, Bayerische Staatsgemäldesammlungen, Munich. Wikipedia Commons.
Towards the end of his time in Munich, Corinth painted this first version of another famous story, this time the temptations that Saint Anthony was reported to have undergone. This is more typical of Corinth’s mature work, with many figures crammed into the composition in a raucous and highly expressive human circus. Although painterly in parts, he is careful to depict fine detail in the joint of meat being held by Saint Anthony, and the saint’s amazing face.
Lovis Corinth (1858–1925), Salome (II) (1900), oil on canvas, 127 × 147 cm, Museum der Bildenden Künste Leipzig, Leipzig. Wikimedia Commons.
Corinth’s narrative paintings reached their peak at the time that he moved to Berlin, in this second version of Salome. Not only was it highly influential on a wide range of other artists and their arts, but its use of gaze is remarkably subtle and its success based on being implicit rather than explicit.
Lovis Corinth (1858–1925), Ulysses Fighting the Beggar (1903), oil on canvas, 83 × 108 cm, National Gallery in Prague, The Czech Republic. Wikimedia Commons.
Corinth wasn’t as restrained when he tackled the story from Homer’s Odyssey of Ulysses Fighting the Beggar. He packs a crowd in, gives every one of them a unique and intriguing facial expression, then pits Ulysses against the beggar in almost comic combat. Note too how his figures are becoming looser.
If Corinth’s first Temptation of Saint Anthony showed a human circus, the rest of the animals and performers came for this his second. Those figures are also becoming significantly more painterly, and the Queen of Sheba has similarities with his earlier figure of Salome.
Lovis Corinth (1858–1925) Homeric Laughter (1909), oil on canvas, 98 × 120 cm, Bayerische Staatsgemäldesammlungen, Munich. Wikimedia Commons.
Of all his narrative paintings, his Homeric Laughter must be the most complex. It refers to a story within the story of Homer’s Odyssey, told by the bard Demodocus to cheer Odysseus up when he is being entertained by King Alcinous on the island of the Phaeacians. It’s another raucous spectacle, in which we join the other gods in seeing Mars and Venus caught red-faced making love.
Lovis Corinth (1858–1925), The Blinded Samson (1912), oil on canvas, 105 x 130 cm, Alte Nationalgalerie, Berlin. Wikimedia Commons.
Corinth returned to narrative after his stroke, painting The Blinded Samson with its obvious autobiographical references. Samson’s body is painted more roughly, although the artist has taken care to give form to the drops of blood running down Samson’s cheeks. This version of Samson contrasts with his others in showing the man alone.
Lovis Corinth (1858–1925) Ariadne on Naxos (1913), oil on canvas, 116 × 147 cm, Private collection. Wikimedia Commons.
Less than two years after his stroke, Corinth returned with another elaborate and wild painting, this time depicting the story of Ariadne on Naxos. This is another highlight of Corinth’s career, particularly as it condenses several different moments in time into its single image, using multiplex narrative; that might have been fairly commonplace during the Renaissance, but was exceptional for the early twentieth century. It works wonderfully.
Lovis Corinth (1858–1925), Cain (1917), oil on canvas, 140.3 x 115.2 cm, Museum Kunstpalast, Düsseldorf. Wikimedia Commons.
Late during the First World War, Corinth moved on from crowded and vivacious narrative paintings, and became more autobiographical again. The huge and stark figure of Cain heaping rocks onto the body of his brother Abel fits with Corinth’s growing horror and despair as the war drew on.
Lovis Corinth (1858–1925), Susanna and the Elders (1923), oil on canvas, 150.5 x 111 cm, Niedersächsisches Landesmuseum Hannover, Hanover, Germany. Wikimedia Commons.
Corinth’s last painting of Susanna and the Elders is a remarkable contrast with his first, from over thirty years earlier. He still avoids a pastoral or garden setting, and his figures are now fading forms in patches of colour and texture.
Lovis Corinth (1858–1925), The Trojan Horse (1924), oil on canvas, 105 × 135 cm, Staatliche Museen zu Berlin, Berlin. Wikimedia Commons.
For what must have been his last great narrative painting, Corinth looked to the events leading up to the fall of Troy, in particular The Trojan Horse. The great walls and towers of the city appear as a mirage, their forms indistinct from the dawn sky. Although roughly painted using coarse marks, the soldiers and the horse itself are more distinct in the foreground.
Corinth’s style evolved through his career, but he also continued to paint stories right up to the last. Together, they form one of the most sustained and brilliant series of narrative paintings of any artist since Rembrandt.
It’s commonly claimed that software encryption, as used in APFS Encrypted format, incurs negligible overhead. The last time I looked at that was with Thunderbolt 3 SSDs connected to a Mac Studio M1 Max, when I found that varied according to the SSD. One of the three I tested then did show significant reductions in encrypted write speed, from 2.2 to 1.8 GB/s, but the fastest showed no change from its unencrypted write speed of 2.8 GB/s. This article reports new test results from a Mac mini M4 Pro with faster SSDs, one Thunderbolt 5 and the other USB4, and adds data for computing SHA256 hashes.
These are of particular interest, as not only are the unencrypted transfer speeds for both SSDs significantly higher than Thunderbolt 3, but the host has significantly faster CPU cores.
Two sets of measurements were made on each of the two SSDs:
Stibium 1.2 running on macOS 15.5 Sequoia was used to measure read and write speeds over randomised sequences of a total of 53 GB in 160 files of 2 MB to 2 GB individual size.
Stibium was used to measure the single file read speed of a 16.8 GB IPSW file, and Dintch was used to measure the time taken to stream the file in and compute its SHA256 digest, using CryptoKit.
Read and write speeds
Results of the first series of tests showed both SSDs performed as expected when using plain APFS, with read and write speeds of 5.3 GB/s for TB5, and 3.7 GB/s for USB4.
Small reductions in read speed were seen in both SSDs when using APFS Encrypted, to about 98% and 95% of their unencrypted read speed. Although there was a similar small reduction in write speed for USB4, to 97%, that seen in the Thunderbolt 5 SSD was greater, with a fall from 5.3 to 4.7 GB/s (89%). Both sets of tests were repeated for that SSD, allowing ample time for the SLC cache to be emptied after each set of write tests, and results remained essentially the same.
Although write speed to APFS Encrypted for this Thunderbolt 5 SSD remained well above that for USB4, encryption brought a reduction in speed of just over 10%, more than I had anticipated.
Hash computation
SHA256 and SHA512 digests are now used to check file data integrity. Both are computationally intensive, and I have previously reported that reading files of substantial size and computing their digests using CryptoKit proceeds at about 3 GB/s for files stored on the fast internal SSD of a Mac mini M4 Pro.
With the Thunderbolt 5 SSD, a plain file of 16.8 GB was read at 6.5 GB/s, and encrypted at 4.7 GB/s. SHA256 digest computation was performed at 2.6 GB/s from plain APFS, and 2.2 GB/s from APFS Encrypted, both well below that from the internal SSD, and less than half the speed of just reading the file.
Although the USB4 SSD was inevitably slower on the read tests, at 3.8 GB/s, encryption had little effect, at 3.7 GB/s. SHA256 digest computation was, if anything, faster than with Thunderbolt 5, at 2.8 GB/s plain, and 2.7 GB/s encrypted.
Conclusions
Although there may well be differences with other Thunderbolt 5 and USB4 SSDs, and more extensive results would be helpful:
Whether plain or encrypted APFS, Thunderbolt 5 SSDs are substantially faster than USB4.
Encryption can result in significantly lower write speeds on some Thunderbolt 5 SSDs.
Otherwise, encryption has only small effects on read and write speeds.
Computation of SHA256 digests is significantly slower than encryption, and ranges between 2.2-2.8 GB/s on larger files.
This suggests that, even in faster M4 chips, CPU performance limits the speed of software encryption, and even more so for SHA256 digest computation.
This second article concludes my virtual exhibition of a selection of Peter Paul Rubens’ paintings of myths from Ovid’s Metamorphoses.
Peter Paul Rubens (1577–1640), The Calydonian Boar Hunt (c 1611-12), oil on panel, 59.2 × 89.7 cm, J. Paul Getty Museum, Los Angeles, CA. Wikimedia Commons.
Rubens and his workshop painted several different accounts of Ovid’s great story of the Calydonian Boar Hunt. This is the first, from about 1611-12, with Meleager just about to finish the wounded boar off. Atalanta’s arrow is visible by its left ear, and the body of Ancaeus lies just behind Meleager’s left foot. The wall of horses behind the boar, and the crowd of hunters behind Meleager, including Atalanta in blue, frame the combatants in the foreground, with some spears directing the gaze at a visual centre of the boar’s snout.
Peter Paul Rubens (1577–1640), Meleager and Atalanta and the Hunt of the Calydonian Boar (study) (c 1618-19), oil on panel, 47.6 × 74 cm, Norton Simon Museum, Pasadena, CA. Wikimedia Commons.
A few years later, in about 1618-19, Rubens reworked his composition in this marvellous study of Meleager and Atalanta and the Hunt of the Calydonian Boar. This shifts the visual centre closer to the geometric centre, and brings the gaze in using a greater range of radials. It also gives Atalanta a more active part, as in Ovid’s text.
Peter Paul Rubens (1577–1640), The Hunt of Meleager and Atalanta (c 1616-20), oil on canvas, 257 × 416 cm, Kunsthistorisches Museum, Vienna, Austria. Wikimedia Commons.
Rubens’ finished result is The Hunt of Meleager and Atalanta probably from around 1618-20. Meleager has aged slightly, and the boar rests its hoof on the body of Ancaeus. Radial lines of spears are augmented by a dog and some human figures, and the centre of the painting now includes a landscape, with bright sky used to emphasise the visual centre. It also seems to show not just Atalanta at the right hand of Meleager, but two other women behind her, and possibly another in blue robes on a horse just above the middle of the painting.
Peter Paul Rubens (1577–1640) and workshop, Meleager Presents Atalanta with the Head of the Calydonian Boar (before 1640), oil on panel, 76 x 57.5 cm, location not known. Wikimedia Commons.
Rubens and his workshop’s Meleager Presents Atalanta with the Head of the Calydonian Boar (before 1640) shows the award of the trophy by Meleager. The couple are here alone, apart from an inevitable winged cupid, and a goddess, most probably Diana, watching from the heavens. Meleager stands on the forelegs of the dead boar, and his spear behind is still covered in its blood.
Peter Paul Rubens (1577–1640) and Jan Brueghel the Elder (1568–1625), The Feast of Achelous (c 1615), oil on panel, 108 × 163.8 cm, Metropolitan Museum of Art, New York, NY. Wikimedia Commons.
Around 1615, Rubens collaborated with Jan Brueghel the Elder (father of Jan Brueghel the Younger) in The Feast of Achelous. There are nine men around the banqueting table, without any distant nymphs.
Peter Paul Rubens (1577–1640), Stormy Landscape with Philemon and Baucis (c 1625?), oil on oak, 146 × 208.5 cm, Kunsthistorisches Museum, Vienna. Wikimedia Commons.
His Stormy Landscape with Philemon and Baucis from about 1625 is one of the few paintings to show a broader view of this late moment in Ovid’s story. His dramatic landscape shows storm-clouds building over the hills, a raging torrent pouring down the mountainside, dragging large trees and animals in its swollen waters, and the four figures on a track at the right. Philemon and Baucis are struggling up the track with their sticks, Jupiter points to a rainbow formed over a waterfall at the lower left corner, and Mercury is all but naked.
Peter Paul Rubens (1577–1640) (workshop) and Jan Brueghel the Elder (1568–1625), Nymphs Filling the Horn of Plenty (c 1615), oil on panel, 67.5 x 107 cm, Koninklijk Kabinet van Schilderijen Mauritshuis, The Hague, The Netherlands. Wikimedia Commons.
Rubens and Jan Brueghel the Elder also collaborated in Nymphs Filling the Horn of Plenty, again in about 1615. Although it has no references to the fight between Hercules and Achelous, it’s good to see the staff preparing the second course of Achelous’ banquet.
Peter Paul Rubens (1577–1640) (workshop of), The Abduction of Deianeira by the Centaur Nessus (c 1640), oil on panel, 70.5 x 110 cm, Niedersächsisches Landesmuseum Hannover, Hanover, Germany. Wikimedia Commons.
This marvellous painting was probably made by Rubens’ workshop around the time of the Master’s death in 1640. It views The Abduction of Deianeira by the Centaur Nessus from the bank on which Hercules is poised to shoot his arrow into Nessus. This has the centaur running across the width of the canvas, his face and body well exposed for Hercules’ arrow to enter his chest. To make clear Nessus’ intentions, a winged Cupid has been added, and Deianeira’s facial expression is clear in intent. An additional couple, in the right foreground, might be intended to be a ferryman and his friend, who appear superfluous apart from their role in achieving compositional balance.
Peter Paul Rubens (1577–1640), The Birth of the Milky Way (1636-37), oil on canvas, 181 × 244 cm, Museo Nacional del Prado, Madrid, Spain. Wikimedia Commons.
A few years before his death, Rubens painted a wonderful account of The Birth of the Milky Way (1636-37). Jupiter sits in the background on the left, seemingly bored. Juno’s milk arcs out from her left breast over the heavens, and her peacocks look distressed.
Peter Paul Rubens (1577–1640), Orpheus and Eurydice (1636-38), oil on canvas, 194 × 245 cm, Museo Nacional del Prado, Madrid, Spain. Wikimedia Commons.
His atmospheric painting of the flight of Orpheus and Eurydice (1636-38) was also made during his later years of retirement, a few years before his death. Orpheus, clutching his lyre, is leading Eurydice away from Hades and Persephone, as they start their journey back to life. He opts for an unusually real-world version of Cerberus at the bottom right corner.
Peter Paul Rubens (1577–1640), The Rape of Ganymede (1636-37), oil on canvas, 181 × 87.3 cm, Museo Nacional del Prado, Madrid. Wikimedia Commons.
Rubens’ The Rape of Ganymede (1636-37) is surprising for its use of profane humour, with the placement of both ends of Ganymede’s quiver. Clearly this wasn’t intended for viewing by polite mixed company.
Peter Paul Rubens (1577–1640), The Death of Hyacinth (1636), oil on panel, 14.4 × 13.8 cm, Museo Nacional del Prado, Madrid, Spain. Wikimedia Commons.
In 1636, when he was in retirement, Rubens made one of his wonderful oil sketches of The Death of Hyacinth, capturing the scene vividly, as Hyacinthus’ head rests against the fateful discus. This doesn’t seem to have been turned into a finished painting.
Peter Paul Rubens (1577–1640), Venus and Adonis (date not known), oil on canvas, 194 × 236 cm, Metropolitan Museum of Art, New York, NY. Wikimedia Commons.
Rubens skilfully reversed Titian’s composition in his undated Venus and Adonis. Adonis is trying to depart to the left with his back to the viewer, bringing the beauty of Venus into full view, and strengthening its triangular composition. It also provides a natural place for Cupid, holding onto Adonis’s leg to stop him from going to his death. Cupid’s quiver, left on the ground behind him, is a reminder of the origin of the relationship.
Peter Paul Rubens (1577-1640), Venus Mourning Adonis (c 1614), oil on panel, 48.5 x 66.5 cm, Dulwich Picture Gallery, London. Wikimedia Commons.
In or just before 1614, Rubens made this oil sketch of Venus Mourning Adonis, a complex composition with the addition of three Graces, and the young Cupid at the right.
Peter Paul Rubens (1577–1640), The Death of Adonis (with Venus, Cupid, and the Three Graces) (1614), oil on canvas, The Israel Museum מוזיאון ישראל, Jerusalem, Israel. Wikimedia Commons.
Rubens’ finished version of Death of Adonis retains the same composition. A rather portly Venus cradles her lover’s head as the Graces weep in grief with her. Rubens has been generous with the young man’s blood, which is splashed around his crotch and spills out onto the ground, where the hounds are sniffing it. The fateful spear rests under Adonis’s legs.
Peter Paul Rubens (1577–1640), The Rape of Hippodame (Lapiths and Centaurs) (1636-38), oil on canvas, 182 × 290 cm, Museo Nacional del Prado, Madrid, Spain. Wikimedia Commons.
His painting of The Rape of Hippodame (Lapiths and Centaurs) (1636-38), remains faithful to his earlier sketch and its composition. Facial expressions, particularly that of the Lapith at the left bearing a sword, are particularly powerful.
Peter Paul Rubens (1577–1640), The Death of Achilles (c 1630-35), oil on canvas, 107.1 x 109.2 cm, The Courtauld Gallery, London. Wikimedia Commons.
Rubens’ The Death of Achilles (c 1630-35) also adheres faithfully to an earlier oil sketch. Achilles’ face is deathly white, and this brings to life the supporting detail, particularly the lioness attacking a horse at the lower edge of the canvas, symbolising Paris’s attack on Achilles.
Peter Paul Rubens (1577–1640), Thetis Dipping the Infant Achilles into the River Styx (1630-35), oil on panel, 44.1 x 38.4 cm, Museum Boijmans Van Beuningen, Rotterdam, The Netherlands. Wikimedia Commons.
Rubens included this oil sketch in his Achilles series, showing Thetis Dipping the Infant Achilles into the River Styx (1630-35). This is taking place in the foreground, while in the middle distance Charon is seen ferrying the dead across the River Styx into the Underworld.
Peter Paul Rubens (1577–1640), Vertumnus and Pomona (1636), oil on panel, 26.5 × 38.3 cm, Museo Nacional del Prado, Madrid, Spain. Wikimedia Commons.
In his late oil sketch of Vertumnus and Pomona of 1636, there’s no pretence that Vertumnus is a woman: he lacks breasts, and even has heavy beard stubble. However, the embrace of his right arm still brings Pomona to push him away with her left arm.
Peter Paul Rubens (1577–1640), Vertumnus and Pomona (1617-19), oil on canvas, 120 x 200 cm, Private collection. Image by Jean-Pol GRANDMONT, via Wikimedia Commons.
The outstanding depiction of Ovid’s story is Rubens’ earlier Vertumnus and Pomona from 1617-19. Vertumnus has assumed his real form, that of a handsome young man. Pomona looks back, her sickle still in her right hand, and her rejection of his advances is melting away in front of our eyes. Rubens even offers us a couple of rudely symbolic melons, and provides distant hints at Vertumnus doing the work in the garden while Pomona directs him, at the upper left.
Peter Paul Rubens (1577–1640) and Frans Snyders (1579–1657), Pythagoras Advocating Vegetarianism (1618-20), oil on canvas, 262 x 378.9 cm, The Royal Collection of the United Kingdom, England. Wikimedia Commons.
In about 1618-20, Rubens collaborated with Frans Snyders to paint Pythagoras Advocating Vegetarianism. The mathematician and philosopher sits to the left of centre, with a group of followers further to the left. The painting is dominated by its extensive display of fruit and vegetables, which is being augmented by three nymphs and two satyrs. One of the latter seems less interested in the food than he is in one of the nymphs.
How can you check whether important data has acquired errors? It could be in packets transferred over a network, files being stored in the cloud, or those put in an archive for safe-keeping. This article explains how errors can be detected and in some cases corrected.
Checksum
One quick and simple way to keep track of whether errors have crept in is to add all the byte values together using modulo arithmetic, and see if that number matches what we expect. Modulo addition ensures the sum never exceeds 255 (for 8-bit bytes), but it also means there’s a 1 in 255 chance that the checksum may remain correct even when the data is wrong. There’s an even more serious problem, though, as changing the order of bytes in the data won’t have any effect on their checksum, even though it would scramble the data.
One solution to those is the Fletcher checksum, using two values instead of one. Both start at zero, then the value of the first block of data is added to the first of those. That is then added to the second value, and each time another value is added to the first, their total is added to the second value. At the end the two values are combined to give the Fletcher checksum.
As this only uses modulo addition, it’s extremely quick, so is used with 32-bit blocks for the Fletcher-64 checksum in APFS file system metadata. The chances of a ‘collision’, in which an error fails to show up in the checksum, are almost 1 in 4.3 billion. Wikipedia’s account includes worked examples.
Cyclic redundancy check
These use additional bits to form cyclic codes based on the remainder of a polynomial division of the data contents. Although they sound complex, they use simple binary operations, so can be very quick in use. Again, Wikipedia’s account includes worked examples.
These were originally developed for use over communication channels such as radio, where they are effective against short bursts of errors. Since then they have been widely used in hard disks and optical storage. They have two main disadvantages, in that they can easily be reversed, allowing the original data to be reconstructed, and they can’t protect against intentional modifications.
Hash
Secure Hash Algorithms, SHA, are a family of cryptographic functions based on a one-way compression function. The first, SHA-1, produces a 160-bit value referred to as the digest. Used from 1995, it was broken in 2005, and has been replaced by SHA-2 using digest sizes of 224-512 bits, now most widely used as SHA-256.
For SHA-256, data is processed in 512-bit chunks and subjected to 64 rounds of a compression function before being appended into the 256-bit digest, while SHA-512 uses 1024-bit chunks and 80 rounds. Full details are again given in Wikipedia.
Important properties of cryptographic hash functions include:
There’s a one-to-one mapping between input data and hash, so the same data always generates the same hash.
It’s not feasible to work out the input data for any given hash, making the mapping one-way.
Collisions are so rare as to not occur in practice.
Small changes in the input data result in large changes in the hash, so amplifying any differences.
Hash values should be fairly evenly distributed.
SHA-256 and related hashes are used in code signatures, as CDHashes of the protected parts of each app, bundle, etc. They’re also used to verify the integrity of the Signed System Volume in modern macOS, where they’re assembled into a tree hierarchy so they can be verified lazily, on-demand. More generally, cryptographic hashes are used in message authentication codes (MAC) to verify data integrity in TLS (formerly SSL).
Error-correcting code
Those methods of detecting errors can’t, in general, be used to correct them. The first effective error-correcting code was devised by Richard Hamming, and is named after him. It can correct all single-bit errors, and will detect two-bit errors as well. Wikipedia’s excellent account, complete with explanatory Venn diagrams, is here.
Ten years after Hamming code came Reed-Solomon code (R-S), invented by Irving S Reed and Gustave Solomon. Nearly twenty years later, when Philips Labs were developing the format for CDs, their code was adopted to correct errors in their reading. Unlike others, when used in CDs, R-S codes are applied to bytes rather than bits, in two steps.
The first encodes 24 B of input data into 28 B of code. Interleaving is then performed on those codewords in blocks of 28, or 784 B of codewords, following which a second R-S coding is performed to convert each 28 B into 32 B of code. The overall code rate is thus 24/32, so an input file grows by a third following this double encoding. R-S code is explained in detail in this Wikipedia article.
The reason for such a complex scheme of error-correction in CDs is to correct bursts of errors up to 4 KB, or 500 bytes, representing about 2.5 mm of the track on a CD. Similar methods have been used for DVDs and in parchive files, which were distributed in USENET posts. However, it becomes progressively harder and less efficient to provide error-correction for larger blocks of missing data, which is of course one of the most serious problems in computer storage systems.
macOS
Unlike some file systems including Zfs, APFS and macOS don’t provide any native method for checking the integrity of data stored in files, although macOS does offer SHA-256 and SHA-512 support in CryptoKit. My free suite of two apps (Dintch and Fintch) and a command tool (cintch) offer a robust scheme using CryptoKit’s SHA-256 that I and others have been using for the last five years. Details are in their Product Page.
Apple has just released an update to XProtect for all supported versions of macOS, bringing it to version 5305. As usual, Apple doesn’t release information about what security issues this update might add or change.
This version adds a single new rule for MACOS.SOMA.JLEN, part of the Amos/Soma family of malware.
You can check whether this update has been installed by opening System Information via About This Mac, and selecting the Installations item under Software.
A full listing of security data file versions is given by SilentKnight and SystHist for El Capitan to Tahoe available from their product page. If your Mac hasn’t yet installed this update, you can force it using SilentKnight or at the command line.
If you want to install this as a named update in SilentKnight, its label is XProtectPlistConfigData_10_15-5305
Sequoia systems only
This update has already been released for Sequoia via iCloud. If you want to check it manually, use the Terminal command sudo xprotect check
then enter your admin password. If that returns version 5305 but your Mac still reports an older version is installed, you may be able to force the update using sudo xprotect update
Several Masters have specialised in painting myths told in Ovid’s Metamorphoses. Although Nicolas Poussin painted many, perhaps the most prolific is Peter Paul Rubens, whose work has featured in nearly half the articles in this series. Here, possibly for the first time, I bring together a virtual exhibition of some of his best narrative paintings drawn from Ovid.
Peter Paul Rubens (1577–1640), Deucalion and Pyrrha (1636), oil on panel, 26.5 × 41.5 cm, Museo Nacional del Prado, Madrid. Wikimedia Commons.
Rubens’ Deucalion and Pyrrha (1636) shows an aged couple, clearly beyond any hope of parenthood, which at least explains why this metamorphosis was needed. As their more reasonably sized rocks transform, they follow an ontogenetic process, instead of behaving like sculpted blocks. Rubens also treats us to some interesting details: the couple’s boat is shown at the top right, and a newly transformed couple appear already to be engaged in the initial stages of making the next generation without the aid of metamorphosis.
Peter Paul Rubens (1577–1640), Pan and Syrinx (c 1636), oil on panel, 27.8 × 27.8 cm, Musée Bonnat-Helleu, Bayonne, France. Wikimedia Commons.
His late oil sketch of Pan and Syrinx from about 1636 is one of the few paintings that attempts to show Syrinx undergoing her transformation into reeds, and succeeds in making Pan appear thoroughly lecherous.
Peter Paul Rubens (1577–1640), Juno and Argus (c 1611), oil on canvas, 249 × 296 cm, Wallraf-Richartz-Museum & Fondation Corboud, Cologne, Germany. Wikimedia Commons.
Rubens’ finest painting of the story of the rape of Io is his Juno and Argus from about 1611, showing this part of its outcome. Juno, wearing the red dress and coronet, is receiving eyes that have been removed from Argus’ severed head, and is placing them on the tail feathers of her peacocks. The headless corpse of Argus lies contorted in the foreground. Rubens took the opportunity of adding a visual joke, in which Juno’s left hand appears to be cupped under the breasts of the woman behind.
Peter Paul Rubens (1577–1640), The Fall of Phaeton (1604-8), oil on canvas, 98.4 × 131.2 cm, The National Gallery of Art, Washington, DC. Wikimedia Commons.
His The Fall of Phaeton, started in about 1604, is perhaps the best of several superb paintings of this story. He seems to have reworked this over the following three or four years, and elaborates the scene to augment the chaos: accompanying Phaëthon in the chariot of the sun are the Hours (Horae, some shown with butterfly wings), who are thrown into turmoil, and time falls out of joint as Phaëthon tumbles out of the chariot.
Peter Paul Rubens (1577–1640), Jupiter and Callisto (1613), oil on canvas, 202 x 305 cm, Museumslandschaft Hessen Kassel, Kassel, Germany. Wikimedia Commons.
His is also one of the best accounts of Jupiter and Callisto (1613). Diana looks a tad more masculine than in most depictions, and their facial expressions are more serious, with Callisto hesitant and suspicious. Most importantly, Rubens tells us that this Diana is more than meets the eye: parked in the background is Jupiter’s signature eagle, with a thunderbolt in its talons.
Peter Paul Rubens (1577–1640), Erichthonius Discovered by the Daughters of Cecrops (c 1616), oil, 217.9 × 317 cm, Palais Liechtenstein, Vienna, Austria. Wikimedia Commons.
This is the better of his two versions of Erichthonius Discovered by the Daughters of Cecrops, from about 1616. Aglauros has just given way to temptation and taken the top off the basket entrusted to the sisters by Minerva, revealing the infant Ericthonius and a small snake inside. To the right is a fountain in honour of the Ephesian Artemis (Roman Diana), distinctive with her multiple breasts, each of which is a source of water. At the left, in the distance, is a herm, at the foot of which is a peacock, suggesting that Juno isn’t far away.
Peter Paul Rubens (workshop of), Cadmus Sowing Dragon’s Teeth (1610-90), oil on panel, 27.7 x 43.3 cm, Rijksmuseum Amsterdam, Amsterdam. Wikimedia Commons.
Rubens’ workshop is credited with this oil sketch of Cadmus Sowing Dragon’s Teeth from between 1610-90, the start of Ovid’s history of Thebes. Cadmus stands at the left, Minerva directing him from the air. The warriors are shown in different states, some still emerging from the teeth, others killing one another. Behind Cadmus is the serpent, dead and visibly edentulous.
Peter Paul Rubens (1577–1640), The Death of Semele (c 1620), oil, Koninklijke Musea voor Schone Kunsten van België, Brussels. Wikimedia Commons.
His oil sketch of The Death of Semele from about 1620 reveals Semele pregnant on a bed and in obvious distress. Jupiter grasps his thunderbolt in his right hand, as his dragon-like eagle swoops in through the window.
Peter Paul Rubens (1577–1640), Perseus and Andromeda (c 1622), oil on canvas, 99.5 x 139 cm, Hermitage Museum, Saint Petersburg, Russia. Wikimedia Commons.
Rubens’ Perseus and Andromeda (c 1622) shows a late moment when the height of action is just past, but its outcome more obvious. Andromeda is at the left, unchained but still almost naked. Perseus is in the process of claiming her hand as his reward, for which he is being crowned with laurels, as the victor. He wears his winged sandals, and holds the polished shield that still reflects Medusa’s face and snake hair. One of several putti (alluding to their forthcoming marriage) holds Hades’ helmet of invisibility, and much of the right of the painting is taken up by Pegasus, derived from a different version of the myth. At the lower edge is the dead Cetus, its fearsome mouth wide open.
Peter Paul Rubens (1577–1640), The Head of Medusa (c 1617), oil on panel, 69 x 118 cm, Kunsthistorisches Museum, Vienna, Austria. Wikimedia Commons.
The young and flourishing Rubens painted this remarkable Head of Medusa in about 1617. This shows the head after Perseus had placed it on a bed of seaweed once he had rescued Andromeda. He includes an exuberant mass of snakes, even a lizard and a scorpion, more of which appear to be forming in the blood exuding at the neck.
Peter Paul Rubens (1577–1640), The Rape of Proserpina (1636-38), oil on canvas, 180 × 270 cm, Museo Nacional del Prado, Madrid. Wikimedia Commons.
His superb The Rape of Proserpina (1636-38) shows a composite of Ovid’s account. Pluto’s face looks the part, his eyes bulging and staring at Minerva, who is trying to stop the girl from being abducted. Below the chariot, the basketful of flowers which Proserpine had been picking is scattered on the ground. Rubens shows irresistible movement to the right, as Pluto struggles to lift the girl into his chariot. Two winged Cupids are preparing to drive the black horses on, once the couple are secured inside.
Peter Paul Rubens (1577–1640), Pallas and Arachne (1636-7), oil on panel, 26.7 × 38.1 cm, Virginia Museum of Fine Arts, Richmond, VA. Courtesy of Virginia Museum of Fine Arts, via Wikimedia Commons.
Rubens’ surviving oil study of Pallas and Arachne (1636-7) tells this story in a conventional view. In the foreground, the angry Minerva is striking Arachne on the forehead with the shuttle. To the right is one of the images woven by Arachne, showing Europa riding Jupiter disguised as a white bull, an image that Rubens was familiar with from Titian’s Rape of Europa (c 1560-62), copied so well by Rubens in 1628-29. However, this version is different from either of those. Behind Minerva and Arachne, two women are sat at a loom, and it’s tempting to think that they too might represent the pair, in multiplex narrative. However, neither is dressed in red as is Arachne, leaving the question open.
Peter Paul Rubens (1577–1640), Tereus Confronted with the Head of his Son Itys (1636-38), oil on panel, 195 × 267 cm, Museo Nacional del Prado, Madrid. Wikimedia Commons.
His Tereus Confronted with the Head of his Son Itys (1636-38) shows the two sisters dressed as Bacchantes, one carrying her thyrsus with her left arm, and their breasts bared. Tereus is just reaching for his sword with his right hand, and his eyes are wide open in shock and rage. In the background, a door is open, and one of the court watches the horrific scene.
Peter Paul Rubens (1577–1640), Boreas Abducting Oreithya (c 1620), oil on panel, 146 × 140 cm, Akademie der Bildenden Künste, Gemäldegalerie, Vienna, Austria. Wikimedia Commons.
Rubens painted Boreas Abducting Orithyia in about 1620, when he was at the peak of his career. Boreas is shown in his classical guise, as a roughly bearded old man with wings. He is sweeping Orithyia up in his arms, while a cluster of Cupids are engaged in a snowball fight, a lovely touch of humour, and a subtle reference to winter.
Peter Paul Rubens (1577–1640), Aurora Abducting Cephalus (c 1636-37), oil on oak panel, 30.8 x 48.5 cm, The National Gallery, London. Wikimedia Commons.
This oil sketch of Aurora Abducting Cephalus was probably painted by Rubens in 1636-37, late in his life, for his workshop to complete as a painting for King Philip IV of Spain’s hunting lodge at Torre de la Parada, near Madrid. In addition to showing the willing Aurora trying to persuade the reluctant Cephalus to join her in her chariot, it includes some details differing from Ovid’s story: Diana’s hunting dog and javelin, given by Procris to her husband after their reconciliation, occurs later in the story, and may be intended as attributes to confirm his identity.
Peter Paul Rubens (1577–1640), Cephalus and Procris (1636-37), oil on panel, 27 × 28.6 cm, Museo Nacional del Prado, Madrid. Wikimedia Commons.
His oil sketch of Cephalus and Procris (1636-37), shows the couple just before Cephalus throws the fateful javelin at his wife.
Peter Paul Rubens (1577–1640), The Fall of Icarus (1636), oil on panel, 27 x 27 cm, Royal Museums of Fine Arts of Belgium, Brussels. Wikimedia Commons.
Rubens’ initial oil sketch of The Fall of Icarus (1636) above, was presumably turned into a finished painting by his apprentice Jacob Peter Gowy. Icarus, his wings in tatters and holding his arms up as if trying to flap them, plunges past Daedalus. The boy’s mouth and eyes are wide open in shock and fear, and his body tumbles as it falls. Daedalus is still flying, though, his wings intact and fully functional; he looks towards the falling body of his son in alarm. They are high above a bay containing people with a fortified town at the edge of the sea.
In the previous article I looked at how RunningBoard monitored an ordinary notarized macOS app, but didn’t manage its life cycle by limiting its access to resources such as memory, CPU or GPU. Here I extend that to the two types of app that are most likely to be managed by RunningBoard, Catalyst and iPadOS apps.
Catalyst
Apple introduced this as a streamlined way for developers of iPadOS apps to be able to create a version that runs in macOS from Catalina onwards. When running on macOS, Catalyst apps are dependent on RunningBoard’s life cycle management, UIKitSystem (which first appeared in macOS Mojave) to bridge between UIKit’s class framework in iPadOS and those in macOS, and additional -board services including FrontBoard, FuseBoard and BaseBoard. Catalyst apps also have access to some features in AppKit, the central class framework for apps developed for macOS, at least until SwiftUI has started to replace it.
Although Apple might have had high hopes of Catalyst bringing many new apps from iPadOS, it hasn’t proved popular with third-party developers, and the ability of Apple silicon Macs to run iPadOS and iOS apps has reduced its relevance to users.
Job descriptions
RunningBoard’s lengthy job descriptions recorded in the log early during the app launch process allow regular macOS, Catalyst and iPadOS apps to be distinguished easily. At the start of each job description, the Platform is recorded, 1 for macOS, 2 for iPadOS, and 6 for Catalyst.
Other differences in job descriptions include:
In EnvironmentVariables, iPadOS adds Container values for CFFIXED_USER_HOME and _DYLD_CLOSURE_HOME.
In AdditionalProperties, both Catalyst and iPadOS apps have “Managed” set to true, and SpawnConstraints containing their CDHashes.
In AdditionalProperties, iPadOS apps have a BeforeTranslocationBundlePath specified.
Catalyst launch
Catalyst apps are launched using the same basic sequence of events as regular macOS apps, with some additional overhead resulting from their UIKitSystem and -board service support. However, when they reach RunningBoard they become managed, in the test case denying it access to the GPU: 00.984295 com.apple.runningboard [app…] Memory Limits: active 0 inactive 0
00.984303 com.apple.runningboard [app…] This process will be managed.
00.984307 com.apple.runningboard <private> is not freezer eligible, disabling freezing.
00.985634 com.apple.runningboard [app…] Set jetsam priority to 0 [0] flag[1]
00.985649 com.apple.runningboard 3638 Set Darwin GPU to "deny"
00.985708 com.apple.runningboard 3638 setGPURole role to 2 (no effect for this process)
00.985715 com.apple.runningboard [app…] Disabled CPU monitoring
00.985716 com.apple.runningboard [app…] Reset CPU monitoring limits to defaults
00.985717 com.apple.runningboard [app…] Resumed CPU monitoring
where [app…] is the app identifier.
Later management includes regular state updates, such as 01.209325 com.apple.runningboard Update delivered for [app…] with taskState 4
01.209327 com.apple.runningboard Received state update for 3638 (app…, running-active-Visible
iPadOS launch
iPadOS and iOS apps are launched completely differently on macOS. Initially MIS, presumably MobileInstallationService, validates the app and its Wrapper, which are translocated to a hidden location in /private/var/folders, from where the wrapped app will be launched. Translocation isn’t intended as a security measure, as it is with macOS apps run there when in quarantine, but is required to work around two limitations:
iOS/iPadOS apps may expect to be run from a path that doesn’t contain whitespaces. The path to the translocation folder guarantees that.
In macOS, the user can run apps from (almost) any path, such as the Desktop, and can rename apps. The translocation path ensures the app’s name and path remain fixed.
Those are reflected in the following log entries, which have changed little since Big Sur: 00.946662 com.apple.mis Bundle: <private>
00.946662 com.apple.mis Is main executable: 0
00.953668 com.apple.syspolicy MIS validation result: 0
00.953673 com.apple.syspolicy Valid app wrapper: <private>
00.953719 com.apple.syspolicy appWrapperPolicyResult: <private>, AWPolicyResult: 1,1,0
00.956399 com.apple.securityd SecTranslocateCreateGeneric: created /private/var/folders/x4/[…]/d/Wrapper
00.965043 com.apple.launchservices LAUNCH: translocate to <private> from <private>
01.047816 com.apple.launchservices Marking <private> as .requiresSecureLaunch because it is PLATFORM_IOS or PLATFORM_MACCATALYST.
01.049878 com.apple.launchservices LAUNCH: _LSLaunchThruRunningboard: com.parrot.freeflight6 / <private>
FairPlay DRM is then accessed through the Secure Enclave Processor.
When it reaches the attention of RunningBoard, the app’s memory limits are set, it’s denied the GPU, and it’s then managed through its life cycle. 02.365127 com.apple.runningboard [app…:3466] Memory Limits: active 16384 inactive 16384
02.365137 com.apple.runningboard [app…:3466] This process will be managed.
02.365142 com.apple.runningboard <private> is not freezer eligible, disabling freezing.
02.365150 com.apple.runningboard Now tracking process: [app…:3466]
02.367347 com.apple.runningboard 3466 Set Darwin GPU to "deny"
02.367450 com.apple.runningboard 3466 setGPURole role to 2 (no effect for this process)
02.367460 com.apple.runningboard [app…:3466] Disabled CPU monitoring
02.367462 com.apple.runningboard [app…:3466] Reset CPU monitoring limits to defaults
02.367464 com.apple.runningboard [app…:3466] Resumed CPU monitoring
02.367496 com.apple.runningboard [app…:3466] set Memory Limits to Hard Inactive (16384)
where [app…:3466] is the app identifier.
That’s followed by frequent assertions and state updates.
PerfPowerServices
Some users have reported RunningBoard using high CPU %, sometimes associated with high levels from PerfPowerServices. By chance, during these tests I encountered a similar situation. For several seconds, the log was filled with entries recording com.apple.PerfPowerServices requesting management information from RunningBoard about most if not all services running at that time.
Many entry sequences followed the pattern: 00.004740 com.apple.runningboard PERF: Received request from [osservice<com.apple.PerfPowerServices>:976] (euid 0, auid 0) (persona (null)): lookupHandleForPredicate:error:
00.004743 com.apple.runningboard PERF: Received lookupHandleForPredicate request from [osservice<com.apple.PerfPowerServices>:976] (euid 0, auid 0) (persona (null))
00.004971 com.apple.runningboard _multiInstance = 0
00.004973 com.apple.runningboard _executablePath = /usr/sbin/cfprefsd
00.004974 com.apple.runningboard no additional launch properties found for <private>
00.005020 com.apple.runningboard _resolveProcessWithIdentifier pid 2712 euid 277 auid 277
00.005040 com.apple.runningboard Resolved pid 2712 to [osservice<com.apple.cfprefsd.xpc.agent(277)>:2712]
00.005089 com.apple.runningboard memorystatus_control error: MEMORYSTATUS_CMD_CONVERT_MEMLIMIT_MB(-1) returned -1 22 (Invalid argument)
00.005091 com.apple.runningboard memorystatus_control error: MEMORYSTATUS_CMD_CONVERT_MEMLIMIT_MB(0) returned -1 22 (Invalid argument)
00.007828 com.apple.runningboard Full encoding handle <private>, with data 44b0344500000a98, and pid 2712
00.008019 com.apple.runningboard [osservice<com.apple.cfprefsd.xpc.agent(277)>:2712] is not RunningBoard jetsam managed.
00.008040 com.apple.runningboard [osservice<com.apple.cfprefsd.xpc.agent(277)>:2712] This process will not be managed.
for multiple copies of cfprefsd, and many other processes.
Presumably PerfPowerServices is concerned with performance power services, but the purpose of these many requests is unknown. After a few seconds of frenetic activity, and more than 10,000 log entries, this subsided and normal running was resumed. If anyone can provide an explanation, I’d be most grateful.
Key points
RunningBoard job descriptions record the app Platform: 1 for macOS, 2 for iPadOS, and 6 for Catalyst.
Catalyst apps are managed by RunningBoard through a relatively normal launch sequence.
iPadOS/iOS apps are launched differently, in a Wrapper and translocated to avoid problems with their name and path in macOS.
iPadOS/iOS apps rely on FairPlay DRM accessed through the Secure Enclave.
iPadOS/iOS apps have memory limits imposed by RunningBoard.
PerfPowerServices can busy RunningBoard with many requests and high CPU %. The cause is unknown, but that high activity should settle of its own accord.
From the start of his career, Lovis Corinth was a great admirer of the paintings of Rembrandt, and like him he painted a series of self-portraits reflecting changes in his life. This penultimate article in the series to commemorate his death a century ago looks at a selection of those. These should cast light on whether his style changed dramatically over the course of his career, and what effects his stroke at the end of 1911 may have had on that style.
Lovis Corinth (1858–1925), Self Portrait (1887), oil on canvas, 52 × 43.5 cm, Private collection. Wikimedia Commons.
His earliest self-portrait is typical of his initial detailed realist style, although he didn’t show the meticulous detail in his hair or beard, for instance, that was more popular earlier in the nineteenth century.
Lovis Corinth (1858–1925), Self-portrait with Skeleton (1896), oil on canvas, 66 × 86 cm , Städtische Galerie im Lenbachhaus, Munich. Wikipedia Commons.
By his later years in Munich, the skin of his face has become more painterly, and non-flesh surfaces such as his shirt and the landscape background, as well as the skull, have obviously visible brushstrokes. A simple self-portrait was also not enough: he posed beside a skeleton, drawing the comparison between his living, fleshy face, and the fleshless skull next to it.
Lovis Corinth (1858–1925), Self portrait with Charlotte Berend-Corinth (1902), oil on canvas, 98.5 x 108.5 cm, Private collection. Wikimedia Commons.
His move from Munich, where he already had a reputation for drinking and social life, to Berlin brought him love and inspiration from his fiancée then wife Charlotte Berend, but intensified his work, social life, and drinking. His depiction of flesh has a rougher facture, and most of the passages in this work appear to have been sketched in quickly.
Lovis Corinth (1858–1925), Bacchante Couple (1908), oil on canvas, 111.5 × 101.5 cm, Private collection. Wikimedia Commons.
These changes are even more evident in this wild and ribald double portrait with his wife, posing appropriately as Bacchantes. His chest and left arm now have stark dark brushstrokes giving the flesh a texture rather than form.
Lovis Corinth (1858–1925), Self-portrait as a Flag-Bearer (1911), oil on canvas, 146 × 130 cm, Muzeum Narodowe w Poznaniu, Poznań, Poland. Wikimedia Commons.
Before his stroke, and the outbreak of the First World War, he posed as the standard-bearer to a mediaeval knight, his head held high with pride for Prussia. The flesh of his face now appears rough-hewn, particularly over surfaces that would normally be shown smooth and blended, such as the forehead. Bright patches on the suit of armour are shown with coarse daubs of white paint.
Lovis Corinth (1858–1925), Self-portrait in Armour (1914), oil on canvas, 120 × 90 cm, Hamburger Kunsthalle, Hamburg. Wikimedia Commons.
After his stroke, and just as the First World War was about to start, there has been little roughening in his facture. His face, though, looks more worried, and his previous pride appears to have been quashed.
Lovis Corinth (1858–1925), Self-Portrait in a White Coat (1918), oil on canvas, 105 × 80 cm, Wallraf-Richartz-Museum & Fondation Corboud, Cologne. Wikimedia Commons.
By the end of the war, when he was 60, he had aged markedly, with receding hair and gaunt cheeks. Although his face and hand are as sketchy as before, his hair and left ear have been rendered more roughly still.
Lovis Corinth (1858–1925), Self-portrait in a Straw Hat (1923), cardboard, 70 x 85 cm, Kunstmuseum Bern, Switzerland. Wikimedia Commons.
When he was out in the country sun at the family’s chalet by Walchensee, he painted his clothing and the landscape extremely roughly. He looks his years, but if anything appears more healthy and relaxed than when he was confined to Berlin.
Lovis Corinth (1858–1925), Last Self-Portrait (1925), oil on canvas, 80.5 × 60.5 cm, Kunsthaus Zürich, Zürich. Wikimedia Commons.
His last self-portrait shows age catching up with him, and has even rougher facture. His forehead is now a field of daubs of different colours, applied coarsely. His hair consists of gestural marks seemingly made in haste.
Although there’s a clear trend towards a rough facture over the years, I can’t see any particular watershed either following his stroke or at another time that suggests sudden change. Can you?
I hope that you enjoyed Saturday’s Mac Riddles, episode 316. Here are my solutions to them.
1: From PageRank and 10^100 to a set of letters.
Click for a solution
Google
From PageRank (Google Search was founded on the patented PageRank algorithm for ranking search results) and 10^100 (its name is derived from the very large number googol, 10 to the power of 100) to a set of letters (in 2015 it restructured under the ownership of Alphabet Inc.).
2: A hooligan went from directory to search then declined into finance and news.
Click for a solution
Yahoo!
A hooligan (a yahoo) went from directory (it started as a curated web directory) to search (followed by a search engine) then declined into finance and news (what now remains).
3: After changing name three times, this directory has gone wavy.
Click for a solution
DMOZ
After changing name three times (originally GnuHoo, it then became NewHoo, almost ZURL, next Open Directory Project, before becoming DMOZ), this directory (it was a human-curated web directory) has gone wavy (DMOZ was superseded by Curlie in 2018).
This is the last batch of ‘simple’ updates to my free apps to bring them up to the expectations of macOS 26 Tahoe. With them comes a minor update to my log browser LogUI, which is recommended for all using Tahoe, as it fixes an annoying if fundamentally cosmetic bug.
Preparing these updates for release was a little troublesome, as I attempted this using developer beta 3 of Tahoe and Xcode 26 beta 3. Little did I realise when I got all four rebuilt, tested and notarized, that this combination had stripped their shiny new Tahoe-compliant app icons. That made these new versions unusable in Sequoia and earlier, as they each displayed there with the generic app icon, despite working fine in Tahoe.
Eventually I discovered that I could build fully functional versions using Xcode 26 beta 2 in Sequoia 15.5, so that’s how they have been produced.
File integrity
Five years ago I build a suite of two apps and a command tool to enable checking the integrity of file data wherever it might be stored. This uses SHA256 hashes stored with each checked file as an extended attribute. At that time, the only alternative saved hashes to a file in the enclosing folder, which I considered to be suboptimal, as it required additional maintenance whenever files were moved or copied to another location. It made more sense to ensure that the hash travels with the file whose data integrity it verifies.
The three are Fintch, intended for use with single files and small collections, Dintch, for larger directories or whole volumes, and cintch, a command tool ideal for calling from your own scripts. As the latter has no interface beyond its options, it continues to work fine in macOS 26.
Since then other products have recognised the benefits of saving hashes as extended attributes, although some may now use SHA512 rather than SHA256 hashes. What may not be apparent is the disadvantage of that choice.
Checking the integrity of thousands of files and hundreds of GB of data is computationally intensive and takes a lot of time, even on fast M4 chips. It’s therefore essential to make that as efficient as possible. Although checksums would be much quicker than SHA256 hashes, they aren’t reliable enough to detect some changes in data. SHA algorithms have the valuable property of amplifying even small differences in data: changing a single bit in a 10 GB file results in a huge change in its SHA256 hash.
At the same time, the chances of ‘collisions’, in which two different files share the same hash, are extremely low. For SHA256, the probability that two arbitrary byte sequences share the same hash is one in 2^256, roughly one in 1.2 x 10^77. Using SHA512 changes that to one in 2^512, which is even more remote.
However, there ain’t no such thing as a free lunch, as going from SHA256 to SHA512 brings a substantial increase in the computational burden. When run on a Mac mini M4 Pro, using its internal SSD, SHA256 hashes are computed from files on disk at a speed of around 3 GB/s, but that falls to 1.8 GB/s when using SHA512 hashes instead.
Dintch provides two controls to optimise its performance: you can tune the size of its buffer to cope best with the combination of CPU and storage, and you can set it to run at one of three different QoS values. At its highest QoS, it will run preferentially on Apple silicon P cores for a best speed of 3 GB/s, while run at its lowest QoS it will be confined to the E cores for best energy economy, and a speed of around 0.6 GB/s for running long jobs unobtrusively in the background.
The two apps and cintch are mutually compatible, and with their earlier versions going back to macOS El Capitan. In more recent versions of macOS they use Apple’s CryptoKit for optimum performance.
Dintch version 1.8 is now available from here: dintch18
Fintch version 1.4 is now available from here: fintch14
and from their Product Page, from where you can also download cintch. Although they do use the auto-update mechanism, I fear that changes in WordPress locations may not allow this to work with earlier versions.
Compression/decompression
Although I recommend Keka as a general compression and decompression utility, I also have a simple little app that I use with folders and files I transfer using FileVault. This only uses AppleArchive LZFSE, and strips any quarantine extended attributes when decompressing. It’s one of my testbeds for examining core allocation in Apple silicon Macs, so has extensive controls over QoS and performance, and offers manual settings as well as three presets.
Cormorant version 1.6 is now available from here: cormorant16
and from its Product Page. Although it does use the auto-update mechanism, I fear that changes in WordPress locations may not allow this to work with version 1.5 and earlier.
LogUI
Those using this new lightweight log browser in Tahoe will have discovered that, despite SwiftUI automatically laying out its controls, their changed sizes in Tahoe makes a mess of the seconds setting for times. This new version corrects that, and should be easier to use.
LogUI version 1 build 70 is now available from here: logui170
There will now be a pause in updates for macOS Tahoe until Apple has restored backward compatibility of app icons, hopefully in the next beta-releases.
For all its toxicity, vermilion proved an enduring red, unlike less dangerous pigments such as crimson, with its natural origin.
People have dyed their clothes and other fabrics using vegetable colourants for as long as we have evidence. Dyes are quite unsuitable for use in durable paintings: instead of solutions of small molecules of colourant that work well applied to fabrics and paper, we much prefer to paint using pigments, in which the colourant is packaged and protected in much larger particles.
One of the early challenges in the history of art materials was the transformation of vegetable dyes into pigments, in a process generally known as laking. The need was simple: take a vegetable dye such as the crimson derived from Madder plants, and fix it into pigment particles that can be dispersed in gum solution for watercolour, or a drying oil medium.
Neither the Romans nor the Greeks appear to have solved this on any scale, but at some time between the Classical civilisations and the pre-Renaissance, someone discovered that aluminium salts will combine with the colourants in madder extract and make a pigment suitable for fine art painting, in madder lake.
Over time, many different recipes for the preparation of madder lakes were evolved. By using different species of Madder plant, adjusting the method of extracting the colourants from its root, and using different salts for the laking process, madder lakes covered a broad range of hues from pale purples through pinks to brilliant scarlet.
As a result, madder lakes were very widely used, and generally sought-after, except that they weren’t lightfast, even when protected in an oil paint film, and many faded rapidly, over months or just a few years.
Friedrich Herlin’s High Altar made for the church of St Jacob in Rothenburg in 1466 is one of the earliest paintings in which madder lake has been demonstrated. Its abundant reds seem to have stood the test of time, although because Herlin’s painting was normally stored with its wings closed, its madder lakes will have had limited exposure to bright daylight.
Friedrich Herlin (c 1425/30–1500), The Presentation of Christ in the Temple, from High Altar (1466), media and dimensions not known, St.Jakob, Rothenburg ob der Tauber, Germany. Image by Wolfgang Sauber, via Wikimedia Commons.
The two or three different shades of red used by Herlin in the panel of The Presentation of Christ in the Temple are still brilliant, although something odd appears to have happened in the blue robes of the Virgin Mary.
Madder red was mixed with a little lead-tin yellow for the sleeve (at least) in Altobello Melone’s Christ Carrying the Cross, dating back to about 1515.
Niklaus Manuel (1484–1530), Demons Tormenting St. Anthony, left wing outside from the Antonius Altar (1520), oil on panel, width 135 cm, Kunstmuseum Bern, Bern, Switzerland. Wikimedia Commons.
Niklaus Manuel’s Demons Tormenting St. Anthony, on the left wing outside from the Antonius Altar of 1520, features several different reds, at least one of which contains madder lake as its main pigment. It also appears that some of those reds may have faded: Saint Anthony’s cloak looks pale and anaemic, for example.
Johannes Vermeer (1632–1675), Christ in the House of Martha and Mary (c 1654-56), oil on canvas, 158.5 x 141.5 cm, The National Gallery of Scotland, Edinburgh, Scotland. Wikimedia Commons.
Jan Vermeer’s Christ in the House of Martha and Mary from about 1654-56 is a good example of the use of madder lake by one of the Dutch Masters.
When industrial chemistry started to look for improved dyes and pigments in the nineteenth century, attention turned to the humble Madder, in an attempt to isolate the most lightfast components of its root extract, then to synthesise them on an industrial scale.
The main colourant, alizarin, was isolated in impure form in 1826, following which rose-red alizarin lakes became available. The other major colourant, purpurin, was more of a mystery, as little was found in fresh root extract, but it was generated during manufacture and storage; its purification took a few decades longer to achieve.
Ignace-Henri-Jean-Théodore Fantin-Latour (1836-1904), Still Life with Chrysanthemums (1862), oil on canvas, 46 x 55.6 cm, The Philadelphia Museum of Art (John G. Johnson Collection, 1917), Philadelphia, PA. Courtesy of The Philadelphia Museum of Art.
I suspect that the delicate reds in Henri Fantin-Latour’s Still Life with Chrysanthemums (1862) owe much of their colour to partially-purified alizarin crimson derived from Madder root.
Alizarin was first synthesised in about 1869, became available as a pigment in its own right from 1891, and was considered to be both more consistent in its colour and more lightfast. However, its lightfastness didn’t prove as good as had been hoped, and since the late twentieth century the fading of alizarin crimson has been used in lightfastness testing to demonstrate that sufficient light exposure has occurred. It has effectively become the benchmark for non-lightfastness.
Paint patches: QoR watercolour
Modern professional watercolour ranges, here those from QoR, often include a paint designated as Permanent Alizarin Crimson, which doesn’t contain alizarin or any other derivative of the Madder plant.
Paint patches: Winsor & Newton Artists’ WatercolourPaint patches: Winsor & Newton Artists’ Watercolour Sticks
A few ranges, including Winsor & Newton Artists’ Watercolour Sticks, do still offer genuine alizarin crimson (PR83). Unless you are content for that colour to fade on exposure to light, you should avoid using it in any significant work.
This is true even in oil paints, where ranges such as Williamsburg’s offer a Permanent Crimson using a more lightfast pigment.
Paint patches: Williamsburg Oils
It’s a great pity that the crimson used by Vermeer and extensively by JMW Turner has such fugitive colour. At least we now have several excellent alternatives.
Reference
Helmut Schweppe and John Winter (1997) Artists’ Pigments, vol 3, ed Elisabeth West Fitzhugh, Archetype. ISBN 978 1 904982 76 0.
I can confirm that there are ghosts in Macs. I know because I have seen them, spectres of rock bands from well over 50 years ago, speaking to us from the past, a dozen years before the first Mac, and four years before Apple was even founded. The band in question is named Creedence Clearwater Revival, who split up in 1972. Their appearance on Macs has been sporadic, in the form of a mystery volume that seems to mount from nowhere, whose name starts with the distinctive neologism coined by CCR’s rhythm guitarist Tom Fogerty after his friend Credence Newball.
Last week it turned out that mystery volume is a cryptex, one of the 23 used to provide support for Apple Intelligence in macOS, iOS and iPadOS.
Cryptexes are both straightforward and rather strange. They’re basically just a cryptographically secured disk image, but when they’re loaded by APFS, rather than being mounted as a volume, they get grafted into the file system almost as if they had been firmlinked into it. Although they didn’t exactly impress when used for Rapid Security Responses (RSRs) in macOS Ventura, since then they’ve been put to better use adding flexibility to the Signed System Volume (SSV), an immutable snapshot of the System volume that’s sealed with cryptographic hashes.
While the SSV is a powerful way to secure the boot process, it’s also a little too rigid for some purposes. Not only do cryptexes provide a convenient way to deliver Safari and its supporting components, which previously had to be installed on the Data volume, but they are a flexible solution for large dyld caches, accommodating to the differing needs of Intel and Apple silicon Macs. Intel Macs only use those built for their own architecture, but Apple silicon Macs require support for both, with the Intel version available for use by Rosetta 2 when running translated x86 code.
What I hadn’t realised, and hadn’t seen reported elsewhere, was how the extras needed for Apple Intelligence, another single-platform feature, are also provided in cryptexes. Unlike those for the system, these aren’t grafted early during the boot process, so can be downloaded and installed when a user enables AI, and thereafter grafted after that user has logged in. Their contents then appear among the thousands of install-on-demand linguistics and other components in /System/Library/AssetsV2, as I described earlier this week.
Presumably they merit this special protection because of their access to Private Cloud Compute (PCC), consistent with Apple’s stringent policies and engineering to ensure the robustness of PCC. Indeed, as Apple describes, the PCC is apparently an enthusiastic user of cryptexes: “Additional software outside the base operating system can be delivered to the system only in the form of cryptexes, which contain their own Image4 manifest and trust cache.” Apple goes on to provide a detailed account of how cryptexes are handled by PCC. This illustrates how sophisticated their management can be, and explains why, despite their shaky introduction as RSRs, cryptexes are proliferating.
This could change when macOS 27 goes single-architecture next year, and there’s no need to cater for both chalk and cheese. But I suspect the advantages of augmenting the SSV with the flexibility of cryptexes will remain sufficiently attractive to ensure they are retained in macOS, as they already are in iOS and iPadOS.
Cryptexes are also remarkably unobtrusive, as has been apparent with the 23 currently used to support AI. That is until something unearthly happens deep inside the grafting mechanism in macOS and accidentally mounts a cryptex as a disk image, making it appear like a spectre in the Finder. In my case it must have occurred when I copied a cryptex from its hiding place among those files in /System/Library/AssetsV2 and mounted it to see what it contained. Exorcising this ghost required compressing the cryptex, trashing the copy I had made, and repeatedly trying to unmount it until it finally stopped appearing following startup.
But I still know how to summon the spirit of Creedence Clearwater Revival whenever I need to remind myself of the early 1970s. Now if someone would be kind enough to tell me which cryptex brings the spirit of Pink Floyd, I’ll leave you in peace.
As a primary colour, red is essential to most palettes, but it has also proved technically challenging to find pigments that are both intense and lasting. This weekend I look at the history of two contenders, in vermilion and crimson, names also steeped in history.
There’s one red that looks as brilliant today as when it was first brushed out five hundred or even two thousand years ago. It’s a pigment known to, and used by, the Romans, and in ancient China was not only used extensively in art, but was scattered in graves. Vermilion is one of the most toxic pigments, and over the last century has been displaced by cadmium red and more novel organic pigments. Look at many paintings made before 1870, and their reds are likely to be dominated by vermilion.
For a long time, vermilion paint was made using powdered cinnabar, naturally-occurring mercuric sulphide, and is then technically known as cinnabar rather than vermilion. Its manufacture from liquid mercury was probably brought from China to Europe, since when much of the vermilion pigment used in Europe has been synthetic.
The main source of cinnabar, and of the metal mercury, in Europe were the mines at Almadén in Spain. These were used by the Romans, and until their closure in 2000 had produced more cinnabar and mercury than any other location. In 1563, deposits were discovered in Huancavelica in Peru, and they were the second largest source over the following three hundred years. Other important sources have been located in China, Slovenia, Italy, Mexico, and the USA.
The mining of cinnabar has long been recognised as hazardous due to its great toxicity, something known as far back as the Romans. Locked in pigment particles in oil paint it’s less hazardous than in water-based paints such as egg tempera; it’s wisest not to use cinnabar or vermilion in dry form, as in pastels, even with good respiratory and skin protection. Even with careful handling, pigment residues pose a serious threat to the environment.
The brightest of the reds in Duccio’s Transfiguration, from the Maestà Predella Panels painted in 1307-11, have the distinctive colour of vermilion. It is often associated with holy people, and holy objects, and contrasts with the other brilliant pigment of ultramarine, which is conventionally used in the clothing of the Virgin Mary.
Its one unfortunate habit is a tendency to blacken, by forming the black version of cinnabar known as metacinnabar. This tends to happen more often in the thinner, less protective paint films of aqueous media, particularly egg tempera, as shown in Nardo di Cione’s Saint John the Baptist, Saint John the Evangelist and Saint James from 1363-65. The lining of the clothing of the saint at the right uses vermilion, and has darkened in patches as a result.
Masaccio’s panel of Saints Jerome and John the Baptist from the Santa Maria Maggiore Altarpiece, from 1428-29, is another fine example of the use of a lot of vermilion (as cinnabar). The robes of Saint Jerome, on the left, may also show a little darkening in patches, but contrast well with the paler and pinker red of Saint John the Baptist at the right.
Jan van Eyck (c 1390–1441) and Hubert van Eyck (c 1366-1426), The Ghent Altarpiece (c 1432), oil on panel, open overall 350 x 461 cm, Saint Bavo Cathedral, Gent, Belgium. Wikimedia Commons.
Cinnabar saw extensive and highly effective use by the van Eycks in The Ghent Altarpiece (c 1432). Because this was painted in oils, the chances of discolouration are much lower.
Sandro Botticelli (1445–1510), Mystic Nativity (1500), oil on canvas, 108.6 × 74.9 cm, The National Gallery, London. Wikimedia Commons.
Botticelli used cinnabar in several passages in his Mystic Nativity (1500), where its persistent colour contrasts with his use of other red pigments, which haven’t retained their colour as well.
All the Masters and most other significant artists of the past used cinnabar, or vermilion when it was being manufactured in Europe by the early seventeenth century. Tintoretto was no exception, as shown in these two examples: Jupiter and Semele (1545) above, and The Origin of the Milky Way (c 1575), below.
Peter Paul Rubens’ centre panel of the Descent from the Cross (1612-14) in the huge triptych in Onze-Lieve-Vrouwekathedraal, in Antwerp, is one of the most spectacular demonstrations of the use of vermilion, and its lasting chromatic brilliance.
Rembrandt Harmenszoon van Rijn (1606-1669), Belshazzar’s Feast (c 1635-1638), oil on canvas, 167.6 x 209.2 cm, The National Gallery, London. Wikimedia Commons.
Rembrandt is another Master who used vermilion to great effect, here in the dress of the woman at the right, in his Belshazzar’s Feast (c 1635-38). The colour draws attention to her as she is so shocked as to empty the goblet she is holding in her right hand. A duller colour might have allowed this dramatic action to pass unnoticed by the viewer.
Aelbert Cuyp’s Hilly River Landscape with a Horseman talking to a Shepherdess from about 1655-60 is one of the few oil paintings in which darkening of cinnabar has become obvious. The pigment serves well in the huntsman’s coat, but has darkened in patches.
William Hogarth (1697–1764), Marriage A-la-Mode: 3, The Inspection (c 1743), oil on canvas, 69.9 × 90.8 cm, The National Gallery, London. Courtesy of The National Gallery London, inventory NG115.
William Hogarth played on another common association of the colour red in the third painting, The Inspection, from his series Marriage A-la-Mode (c 1743). Although in English we usually refer to a scarlet woman, rather than a vermilion one, his use of vermilion here is effective in portraying the woman as a prostitute.
Vermilion remained popular well into the latter half of the nineteenth century, long enough for it to grace the paintings of the Pre-Raphaelite movement and the French Impressionists.
Claude Monet (1840-1926), Bathers at la Grenouillère (1869), oil on canvas, 73 x 92 cm, The National Gallery, London. WikiArt.
Although Claude Monet used just a few dabs and strokes of vermilion in his landmark painting Bathers at la Grenouillère (1869), he continued to use it well into the latter years of his career. By that time, though, the new cadmium reds were replacing vermilion, a process that is almost complete today, with cadmiums now being superceded by modern organic pigments.
Depending on where you were, public Internet access first came in the early 1990s. Before that there were dial-up bulletin boards accessed using a modem.
The first of those bulletin boards (BBS) went online in Chicago in 1978, thanks to the pioneering work of Ward Christensen and Randy Suess. Those were joined by FidoNet BBSes in 1984-85, developed by Tom Jennings in San Francisco. Here in the UK one of the earliest was Compulink Information Exchange, founded by Frank and Sylvia Thornley. That went commercial as CIX in 1987, and the following year brought the first public access in the UK to limited Internet services such as email and Usenet.
Following discussions on CIX, Cliff Stanford (1954-2022) and his business partners Grahame Davies and Owen Manderfield set up the UK’s first public Internet service, Demon Internet, in a scheme originally known as tenner a month, or TAM. This was founded on the strength of 200 initial subscribers each paying £10 per month a year in advance from 1 June 1992. Demon grew rapidly to reach more than 50,000 subscribers, following which it was bought by Scottish Telecom in 1997, and two years later was demerged and became a public-traded company Thus plc.
At this time, Apple employees and third-party developers communicated using an integrated email system, AppleLink, a service operated by a descendant of General Electric (GE), one of the early computer manufacturers, GE Information Services Company, or GEISCO. Apple’s Internet presence expanded as AppleLink shut down in 1997. GEISCO went on to become GEnie, and died quietly with the new millennium.
Dial-up
Dedicated connections over ADSL were still prohibitively expensive for most users. Like most landline phone calls, online charges were highest during the day, and fell after 6 o’clock in the evening. Most nights the race would be on to see who could connect to their Internet provider before they ran out of incoming phone lines, and you’d have to wait an hour or two before one became available. The following screenshots walk through establishing an Internet connection using Mac OS 8.6 or 9.x with TCP/IP and Remote Access control panels, in 2001.
Armed with your ISP’s instructions and connection details (phone numbers, log on sequences, etc.), open the Modem control panel and check it’s configured correctly (port/internal, modem type). Then open the TCP/IP control panel, and use the Edit/User Mode menu command to display this dialog.
Changing user mode increases the scope of the TCP/IP dialog. In most cases, switch the upper pop-up menu to PPP (the protocol you’ll use to access your ISP), and configure the next pop-up down to Using PPP Server. Some ISPs may instruct differently. Other boxes should only be completed if advised – IP addresses of name servers, for instance. Some ISPs may advise you of a ‘hosts’ file (specifying IP addresses for services such as mail and news), which can be read in by clicking the Select Hosts File button.
Click on the Options button and ensure that TCP/IP is made active. If you can spare the memory, uncheck the Load Only When Needed box, to save memory fragmentation. Using the File/Configurations menu command, name and save these TCP/IP settings so they can be recalled readily. Then quit the control panel.
You should normally access your ISP through the Remote Access control panel, which needs to be set up with the access phone number, your user name (normally the first part of your Internet domain name, allocated by your ISP), and password. Unless you fancy typing your password in every time (or have security problems such as children!), let it save your password.
Click on the Options button to set other important features of Remote Access. Some ISPs require a full script to log on each time, in which case you must obtain a copy from the ISP, and install the script here, for a command-line host. This is unnecessary for most ISPs, thankfully. Avoid checking the top option, of connecting whenever you start TCP/IP applications, as it can cause untold aggravation each time you start your Web browser, for instance. Set any other options, and click on OK.
Finally, set up your email software, browser, and other Internet applications. In recent versions of Mac OS, Apple provides the Internet control panel as an easy way to do this – details entered here, particularly for incoming and outgoing mail, should apply to all compliant applications. Then re-open Remote Access and your applications, and click on Connect.
Mobile
Even if you were fortunate enough to have a mobile phone in those days, they had to use dial-up Internet connections too. So what did we do when we were on the road with a PowerBook G4, or the modem couldn’t connect? We connected to the Internet via a Bluetooth dongle and mobile phone. This next sequence of screenshots explains how to manage this technological feat. The phone I was using at the time was a brand new Ericsson T68, with a display resolution of 101 x 80 in 256 colours, no camera, but the novelty of predictive text. My Mac was running Mac OS X 10.1.x or later, with Apple’s Bluetooth support software (bundled in 10.2 Jaguar), an Apple-supplied D-Link USB Bluetooth transceiver, and Bluetooth-equipped mobile phone with airtime facilities and contract (e.g. GPRS).
Install the Bluetooth software (10.2 already has support) and connect your USB adaptor to a port on your Mac. A new pane appears in System Preferences, Bluetooth. Click to open it and check the Discoverable and Show Bluetooth Status items. Enter the Bluetooth control section of your phone’s menus, turn Bluetooth on, then set your phone to Discover. Authenticate using the same number, 1111 perhaps, on each, and they should pair.
Once paired, and that can sometimes prove a bit fiddly, your phone knows your Mac by its AppleShare computer name, and your Mac knows the phone by its name. Re-pairing in the future should be simpler, but follows the same basic sequence of making your Mac discoverable, letting the phone discover it, then completing the pairing. Switch your phone’s Bluetooth to automatic to save battery power when not paired.
Click on the Network pane, and using the Active Network Ports popup item turn off other connections apart from bluetooth-modem. Configure that connection to use PPP in the TCP/IP pane. Switch to the PPP pane, and enter connection details provided by your phone network. The phone ‘number’ to dial is a special series of characters, set by the network, and you may need to set PPP Options too.
In the Modem pane, select an appropriate phone from the popup Modem list. Although using an Ericsson T68 here, the closest listed is the T39 running at 28.8 Kbps (not Mbps). You may have to try out different modem setting scripts to see which works best with your particular phone, network, and airtime contract. You can also create your own connection scripts using Modem Script Generator.
Apply the changes to Network now, and open the Internet Connect application. Ensure that the correct configuration is selected, and check the details again. When you’re happy, and confident that your phone is within Bluetooth signal range and has a good phone signal strength (if using GPRS, ensure that its signal is strong rather than the regular GSM voice signal), click on the Connect button.
Once your connection is established you can browse the Web, collect and send email, and use all the facilities of the Internet from your Mac. Connection speeds are inferior to those made over telephone wires, though, and pedestrian compared with broadband. The menubar status holds a popup menu for ready access to key applications. Click on Internet Connect’s Disconnect button when finished.
Finally, in case you hadn’t already gathered, these were really slow Internet connections, and even small downloads could take several hours, if you weren’t disconnected. But there were times when software played tricks to amuse us. Here’s a screenshot of me trying to download and install the 14.4 MB update via Demon, to take Mac OS X 10.1 Puma to version 10.1.1 in November 2001, claimed to take 11,643 days at 44 Kbps.
This is the last of four articles providing brief summaries and contents for this series of paintings telling myths from Ovid’s Metamorphoses, and covers parts 55-74, from the foundation of Troy to the age of Augustus.
Jacob Jordaens (1593–1678), The Golden Apple of Discord (1633), oil on canvas, 181 × 288 cm, Museo Nacional del Prado, Madrid, Spain. Wikimedia Commons.
The foundation of Troy by Laomedon who failed to repay Apollo and Neptune for their help, so Neptune floods the city. Peleus marries the Nereid Thetis, with their wedding banquet on Mount Pelion, attended by the gods. Eris, goddess of discord, throws a golden apple into the group as a reward for the fairest, setting up the Judgement of Paris and leading to the war against Troy. Thetis gives birth to Achilles.
Chione boasts she is fairer than Diana, so the goddess shoots an arrow through her tongue, and she bleeds to death. Her father is turned into a hawk. Ceyx and Halcyone are turned into kingfishers. Aesacus is turned into a seabird after the death of Hesperia from a snake bite.
Giovanni Battista Tiepolo (1696–1770), The Sacrifice of Iphigenia (1770), oil on canvas, 65 × 112 cm, Private collection. Wikimedia Commons.
After his judgement, Paris abducts Helen and triggers the war against Troy. The thousand ships of the Greeks gather at Aulis, where they’re delayed by storms. Their leader Agamemnon had offended Diana, so has to sacrifice his daughter Iphigenia to propitiate the goddess. At the last moment, Diana may have substituted a deer.
Peter Paul Rubens (1577–1640), The Rape of Hippodame (Lapiths and Centaurs) (1636-38), oil on canvas, 182 × 290 cm, Museo Nacional del Prado, Madrid, Spain. Wikimedia Commons.
The Greek fleet sets sail against Troy, and when it arrives Protesilaus, the first to land, is killed by Hector. Achilles kills Cycnus, who is transformed into a swan. Caeneus was born a woman and raped by Neptune, for which she was turned into a male warrior. Nestor tells of the battle between Lapiths and Centaurs at the wedding of Pirithous and Hippodame.
Alexander Rothaug (1870-1946), The Death of Achilles (date not known), brown ink and oil en grisaille over traces of black chalk on canvas, dimensions and location not known. Wikimedia Commons.
Neptune’s hatred for Achilles leads to the warrior’s death from an arrow shot by Paris.
Gillis van Valckenborch (attr) (1570-1622), The Sack of Troy, oil on canvas, 141 x 220 cm, Private Collection. Wikimedia Commons.
Ajax and Ulysses contest for the armour of Achilles, but Ajax loses and falls on his sword. His blood is turned into the purple hyacinth flower. Troy falls, Priam is killed, Hector’s son Astyanax is thrown from a tower, and Troy is sacked by the Greeks.
Charles Le Brun (1619–1690), The Sacrifice of Polyxena (1647), oil on canvas, 177.8 x 131.4 cm, Metropolitan Museum of Art, New York, NY. Wikimedia Commons.
Queen Hecuba’s youngest son is murdered, and her daughter Polyxena is sacrificed to gain fair winds for the departing Greek fleet. Hecuba blinds Polymestor and is transformed into a dog. Aurora laments the death of her son Memnon.
Pompeo Batoni (1708–1787), Aeneas Fleeing from Troy (1753), oil on canvas, 76.7 × 97 cm, Galleria Sabauda, Turin, Italy. Wikimedia Commons.
Aeneas flees Troy with his father Anchises and son Ascanius, but his wife Creusa dies before she can escape. They sail with a fleet of Trojan survivors to Delos, then on to Crete.
Odilon Redon (1840–1916), The Cyclops (c 1914), oil on cardboard mounted on panel, 65.8 × 52.7 cm, Kröller-Müller Museum, Otterlo, The Netherlands. Wikimedia Commons.
Aeneas sails on to land on Sicily. Galatea tells the story of her love for Acis, and the jealousy of Polyphemus the Cyclops, who killed Acis, whose blood was turned into a stream.
Glaucus pursues Scylla, and is refused, so he visits Circe, who turns the lower part of Scylla’s body into a pack of dogs, then finally into a rock in the Straits of Messina. Together with Charybdis the whirlpool, they pose a threat to Odysseus’ ship.
Henry Fuseli (1741–1825), Dido (1781), oil on canvas, 244.3 x 183.4 cm, Yale Center for British Art, New Haven, CT. Wikimedia Commons.
Aeneas is rowed through the straits only to be blown south to Carthage, where he has an affair with Queen Dido. When he departs she falls on a sword he gave her and dies on her funeral pyre. Aeneas returns north to land at Cumae to visit its Sibyl. The pair visit the underworld, where they meet the ghost of Anchises.
Joseph Mallord William Turner (1775–1851), Ulysses Deriding Polyphemus (1829), oil on canvas, 132.7 × 203 cm, The National Gallery, London. Wikimedia Commons.
A survivor left from Ulysses’ crew tells of their encounter with the Cyclops Polyphemus, who had held them captive. Ulysses got him drunk and blinded his single eye. The crew escaped tied under a flock of sheep. As they fled in their ship, the Cyclops threw a huge rock at them.
John William Waterhouse (1849–1917), Circe Offering the Cup to Odysseus (1891), oil on canvas, 149 x 92 cm, Gallery Oldham, Manchester, England. Wikimedia Commons.
A second of Ulysses’ crew tells of their time on Circe’s island. She turned them into pigs, but they were transformed back after Ulysses and Circe married.
Circe transforms Picus, King of Latium, into a woodpecker. Aeneas arrives at Latium, where he has to fight Turnus for the throne. Aeneas’ ships are burned and transformed into sea nymphs. As the end of Aeneas’ life draws near, he undergoes apotheosis to become Indiges.
Pomona, a dedicated gardener who shuns men, is courted unsuccessfully by Vertumnus, god of the seasons. He assumes the guise of an old woman to try to persuade her, and tells her the tragic story of Iphis and Anaxarete, who was transformed into a statue. Vertumnus finally succeeds.
Rome is founded by Romulus. Its war with the Sabines, the death of the Sabine King Tatius, and Romulus becomes ruler of both peoples. Romulus is transformed into the god Quirinus, with his wife Hersilia as the goddess Hora.
Myscelus is saved from death and goes on to found Crotona, where Pythagoras lived in exile. Pythagoras expounds change and transformation underlying everything in nature, and the central theme of Metamorphoses. The virtues of vegetarianism. King Numa returns to Rome and establishes its laws.
Plague strikes Rome. The oracle at Delphi tells the Romans to bring the god Aesculapius to the city. He is taken as a snake from Epidaurus to his temple on Tiber Island, and the Romans are saved from plague.
Jean-Léon Gérôme (1824–1904), The Death of Caesar (1859-67), oil on canvas, 85.5 x 145.5 cm, Walters Art Museum, Baltimore, MD. By courtesy of Walters Art Museum, via Wikimedia Commons.
The assassination of Julius Caesar, who then undergoes apotheosis.
Jupiter foretells the accomplishments of Augustus, including success in battle, the fall of Cleopatra, and growth of the empire. The fate of Ovid in banishment to Tomis on the Black Sea.
This week’s security data updates were quite a surprise. We’ve grown accustomed to Apple tweaking XProtect’s data most weeks, but this week was a bit different, and came with an update to XProtect Remediator as well, the first in four months. This article explores what they have brought.
Although this security data all goes under the name of XProtect, there are three different protection systems involved.
The traditional XProtect contains a set of ‘Yara’ rules used when performing Gatekeeper scans of new executable code, most notably when a quarantined app is first run, although recent macOS also runs XProtect checks on other occasions. Those rules are used to determine whether the code being scanned is known to be malicious, and if it’s found to be positive, macOS refuses to run that code and you’re told to trash the app.
XProtect Remediator only runs in Catalina and later, where it performs daily background scans to detect and remove software it believes to be malicious. It currently contains 24 separate scanning modules, each designed to detect and ‘remediate’ a different family of malware. Some of its modules also use the detection rules in traditional XProtect, so are improved by regular XProtect data updates. Surprisingly, if XProtect Remediator detects and removes malware, you aren’t notified, although that is recorded in the log and reported as an Endpoint Security event that can be detected by some third-party security software.
Inside the XProtect Remediator app are two files used by the third XProtect, which detects potentially malicious activity such as tampering with parts of a browser’s files. This is therefore referred to as XProtect Behavioural, or by the name it gives to the detection rules it uses, Bastion. Unlike the other two XProtects, this doesn’t rely on performing static checks, but is watching constantly for malicious activity. Although it records that in its local database, at present it doesn’t inform the user, but reports the activity to Apple, to help it acquire intelligence to improve the battle against malware.
XProtect
XProtect version 5304, provided by Apple on 8 July, makes substantial changes to its Yara detection rules to add what appears to be a new family of malware, code-named Bonzai. New rules refer to five different forms, which are most likely to be different components in the same malware, or separate variants, named Bonanza, Barricade, Blaster, Bonder and Banana. It’s likely that independent security researchers will identify these in the coming days, but for the moment the public name of this malware isn’t known.
Looking through these new Yara rules, they look most likely to be for a ‘stealer’, a type of malware that’s currently prevalent, and steals your secrets to send them to a remote server. There are references to Chrome, Brave, Edge and Firefox extensions, and most interestingly some of the malware has been compiled from code written in the Go language, which is becoming popular in cross-platform malicious code.
The last times that Apple added detection rules as substantial as these were in XProtect version 5284 for Adload and Bundlore, and in 5269 for Dolittle, each being major threats.
Bastion
Until now, the behavioural rules used by Bastion have evolved steadily, and the most rules added in one release has only been two, when XProtect Remediator version 123 came with rules 8 and 9, and changes to rule 7, back in January 2023. This update brings four new rules:
Rule 14 detects sending AppleEvents to Safari, Firefox or Chrome.
Rule 15 detects sending AppleEvents to the Finder or Terminal.
Rule 16 detects Mach lookups for com.apple.pasteboard.1.
Rule 17 detects writing shell files hidden in ~/ or /etc, such as ~/.zlogin, or /etc/zlogin.
The first two may be intended to detect AppleScript being used to control those browsers, the Finder or to run scripts in Terminal. Rule 16 may also be related to Apple’s recent announcement on controlling access to the pasteboard in macOS 26. Rule 17 concerns settings files commonly used by command shells, readily seen if you reveal hidden files for your Home folder.
These may well be related to Bonzai, and enable Apple to get a better idea of what is going on out here in the wild, and focus its efforts in improving its detection.
XProtect Remediator
Once samples of malware have been obtained, developing and testing new Yara rules to detect it is relatively quick, and often uses AI to accelerate the process. Writing a new scanning module for XProtect Remediator is more complicated, and takes more time. It may well be that an additional Bonzai scanner is already on its way, and might be delivered in a further update in the next couple of weeks, perhaps with some fine-tuning of the new Bastion rules. I’ll be keeping a lookout for those.
Above all, it will be interesting to see what changes are made in third-party security software, and how well those tackle what appears to be novel malware for macOS.
If you’re building apps using Xcode 26 beta on macOS 26 beta, you should beware of the combination of their third betas. If you’re unlucky like me, you’ll discover those shiny new app icons generated by Icon Composer no longer work on any older version of macOS. This is mentioned in the Xcode 26 b3 release notes, and the workaround given is “none”.
Problem
I’ve built over 20 apps now using Icon Composer’s new icon files, with Xcode 26 b2 on macOS 26 b2. All look good in Tahoe and in previous versions of macOS, at least in Sonoma and Sequoia.
Today I built my first apps using icon files already generated by Icon Composer, but this time with Xcode 26 b3 on macOS 26 b3. In every case, I got a build warning that Xcode “failed to generate flattened icon stack for icon named…”. Although the app icon displays fine in macOS 26 b3, when moved across to Sequoia there’s just a generic icon. Inspecting the app bundle reveals that there’s no icns file inside. The Xcode warning implied this might be related to CoreSVG.
Workaround
I next tried building the same projects using Xcode 26 b2 on macOS 26 b3, but that made no difference at all.
What does appear to be effective is to build in Xcode 26 b2 on macOS 15.5. So far each of the apps I’m trying to build has then worked fine in both Tahoe and Sequoia, and that magic icns file is back.
As I approach the end of this series looking at paintings of interiors, I reach the rooms well out of sight, those that weren’t talked about in polite company. They often used to be known as the scullery, and now as utility rooms. These are where the dull maintenance tasks took place, where the washing was done by maids, the vegetables prepared for the kitchen, and so on. Although never popular in paintings, they have also brought us one of the masterpieces in the European canon.
Gabriël Metsu (1629–1667), Washerwoman (c 1650), oil on panel, 23.9 × 21 cm, Muzeum Narodowe w Warszawie, Warsaw, Poland. Wikimedia Commons.
Portraits of women washing linen first became popular in Dutch and Flemish ‘cabinet’ paintings, such as Gabriël Metsu’s Washerwoman (c 1650), along with other scenes of household and similar activities. This painting appears authentic and almost socially realist: the young woman appears to be a servant, dressed in her working clothes, with only her forearms bare, and her head covered. She’s in the dark and dingy lower levels of the house, and hanging up by her tub is a large earthenware vessel used to draw water. She looks tired, her eyes staring blankly at the viewer.
Johannes Vermeer (1632-1675), The Milkmaid (c 1658-1661), oil on canvas, 45.5 x 41 cm, The Rijksmuseum, Amsterdam. WikiArt.
It took Jan Vermeer to transform a maid at work in a scullery into a masterpiece, in his Milkmaid from about 1658-1661.
A maid is pouring milk from a jug, beside a tabletop with bread. In the left foreground the bread and pots rest on a folded Dutch octagonal table, covered with a mid-blue cloth. A wicker basket of bread is nearest the viewer, broken and smaller pieces of different types of bread behind and towards the woman, in the centre. Behind the bread is a dark blue studded mug with pewter lid, and just in front of the woman a brown earthenware ‘Dutch oven’ pot into which she is pouring milk.
At the left edge is a plain leaded window casting daylight onto the scene. One of its panes is broken, leaving a small hole. Hanging high on the wall on the left are a wickerwork bread basket and a shiny brass pail. The wall behind is white and bare apart from a couple of nails embedded towards its top, and several small holes where other nails once were. At its foot, at the bottom right, five Delft tiles run along the base. In front of those is a traditional foot-warmer, consisting of a metal coal holder inside a wooden case. The floor is dull red, with scattered detritus on it.
Jean-Baptiste-Siméon Chardin (1699–1779), Laundress (c 1735), oil on canvas, 37 × 42 cm, Hermitage Museum Государственный Эрмитаж, Saint Petersburg, Russia. Wikimedia Commons.
Although now much better-known for his still lifes, Jean-Baptiste-Siméon Chardin’s Laundress (c 1735) is one of his many fine genre paintings. This shows a more humorous view of life ‘below stairs’ in a contemporary household. A woman has her voluminous sleeves rolled up and her head well-covered as she launders in a large wooden tub. She looks off to the left of the painting, with a wry smile on her lips.
In front of her, a small child in tatty clothing is blowing a large bubble from a straw, perhaps using some of the soapy water from the washing tub. At the right is one of the cats, looking as inscrutable as ever. Through a partly open door, a maid is seen hanging clean washing up on an indoor line.
Jean-Baptiste Greuze (1725-1805), The Laundress (1761), oil on canvas, 40.6 x 32.7 cm, The J. Paul Getty Museum, Los Angeles, CA. Wikimedia Commons.
Jean-Baptiste Greuze’s Laundress (1761) is in the dilapidated servants’ area, probably in a cellar, where this provocative and flirtaceous young maid is washing the household linen.
The archetype of the maid who seems to have spent all her time in the scullery is Cinderella, in the popular European folk tale.
Edward Burne-Jones (1833–1898), Cinderella (1863), watercolour and gouache on paper, 65.7 x 30.4 cm, Museum of Fine Arts, Boston, MA. Wikimedia Commons.
Edward Burne-Jones’ Cinderella from 1863 shows her reverted to her plain clothes after the ball, but still wearing one glass slipper on her left foot. She is seen in a scullery with a dull, patched, and grubby working dress and apron. Behind her is a densely packed display of blue crockery in the upper section of a large dresser.
John Everett Millais (1829–1896), Cinderella (1881), oil on canvas, 126 x 89 cm, Private collection. Wikimedia Commons.
John Everett Millais’ version is very different. A much younger girl, Cinderella is sat in her working dress, clutching a broomstick with her left hand, and with a peacock feather in her right. She also has a wistful expression, staring into the distance almost in the direction of the viewer. The only other cue to the narrative is a mouse, seen at the bottom left. She wears a small red skull-cap that could be an odd part of her ball outfit, but her feet are bare, and there is no sign of any glass slipper.
Edgar Degas (1834–1917), Woman Ironing (c 1869), oil on canvas, 92.5 × 73.5 cm, Neue Pinakothek, Munich, Germany. Wikimedia Commons.
Early in his career, Edgar Degas started painting a series of laundresses toiling indoors. Woman Ironing (c 1869) shows one of the army of women engaged or enslaved in this occupation in Paris at the time. She is young yet stands like an automaton, staring emotionlessly at the viewer. Her right hand moves an iron (not one of today’s convenient electrically-heated models) over an expanse of white linen in front of her. Her left arm hangs limply at her side, and her eyes are puffy from lack of sleep. The room is full of her work, which threatens to engulf her.
Edgar Degas (1834–1917), Woman Ironing (c 1876-87), oil on canvas, 81.3 x 66 cm, National Gallery of Art, Washington, DC. Wikimedia Commons.
Degas’ less gloomy painting of a Woman Ironing (c 1876-87) maintains the impression of this being protracted, backbreaking work, only slightly relieved by the colourful garments hanging around the laundress as she starches and presses white shirts.
As Macs are computers, when they become overloaded with demands on their resources, they can slow down to a crawl. When Apple was developing its first iPhone it realised that wouldn’t work with a phone, so built safeguarding systems into iOS to ensure their continuing smooth function. When Apple was preparing for the transition from Intel Macs to using its own chips, it decided to bring similar safeguards to the management of their resources. These arrived in macOS 10.15 Catalina with the introduction of RunningBoard.
Launching apps in macOS had become increasingly complex, and required more than just running the executable using launchd. For an app to have its GUI, the code it uses has to be wired up with parts of macOS that run the GUI such as WindowServer. When it’s launched, its window(s) have to be created and brought into focus, in front of other windows. It needs its preference file opened, to be added to the Recent Items list, and for a list of its recently opened documents to be made available to its Open Recent menu command. Those latter services have been provided by LaunchServices, and to enable them it maintains a database of exhaustive details about every app it knows.
Prior to Catalina, it was LaunchServices that coordinated many of these aspects of launching an app from the Finder. Since then it has been handing more over to RunningBoard, while retaining many of its functions. RunningBoard has come to monitor and manage the entire life cycle of apps, from launch to exit. For regular macOS apps, its life cycle management remains supervisory, but for some, including Catalyst apps and those built for iPadOS, RunningBoard can manage and control their allocation of resources such as memory and access to the GPU.
As one of the newer and more pervasive services in macOS, RunningBoard writes a lot of detail in the log, indeed it’s garrulous almost to the point of excess. Although Apple documents almost nothing about its background service runningboardd except stating that it’s “a daemon that manages process assertions to ensure those processes are kept in the appropriate state while assertions are in effect”, and its information about LaunchServices is terse and largely deprecated, we can learn a great deal from the log.
I’ll start this series of articles by explaining how RunningBoard first gets involved in launching an application. I have recently summarised its key stages in the following diagram.
Here, for the sake of simplicity, I’m going to ignore the security side completely, so we’ll assume this app isn’t quarantined, has been run recently in this session, is notarised, and hasn’t changed its CDHashes since it was last run.
As soon as LaunchServices is informed of the action to open the app, it announces it will be launched through RunningBoard, a change from its previous behaviour in Catalina, where LaunchServices did more of the work at the start of the launch process. RunningBoard receives the launch request from CoreServices, and ‘acquires’ an ‘assertion’ targeting the app, with a description to launch the app in a User Interactive role.
RunningBoard works using these assertions, a type of declaration of an intention or intended event. Its next major task is to create a job description, which it helpfully writes to the log as a dictionary. This is a mine of useful information, and has replaced the copious data compiled by LaunchServices in the past. This includes:
a dictionary of Mach services
whether Pressured Exit is enabled
a full listing of environment variables, such as TMPDIR, SHELL, PATH
RunningBoard properties including another TMPDIR
whether to materialise dataless files.
A full example is given in the Appendix at the end. If you ever want to obtain a similar summary for an app, just launch it and inspect log entries from the com.apple.runningboard subsystem for the first second or two after launch.
Shortly after that launchd announces that it will start (spawn) the app, and the user ID (UID) is obtained by OpenDirectory, confirming that ‘divined’ earlier by RunningBoard. This allows launchd to complete spawning the app, and RunningBoard to decide whether it will be managed, in terms of memory and other resources. RunningBoard goes through further preparations before declaring whether the process is subject to GPU, CPU or memory limits.
LaunchServices creates the ‘pending’ application, and a new LSApplication object for it. But it also expects the imminent death of the app, in two entries that might appear surprising: com.apple.launchservices DEATH: Expecting to hear about the death of app App:"AsmAttic" asn:0x0-5b05b pid:3083 refs=4 @ 0x55402ae00, adding to sRunningBoardDeathNotificationsSetRef (pid=3083}.
com.apple.launchservices DEATH: Listening for death via runningboard notification for pending application, pid=3083.
Its fears are unfounded, though, and RunningBoard continues to receive assertions as the launch proceeds. Eventually you should see log entries confirming success: com.apple.launchservices LAUNCH: Starting application with ASN 0x0-0x5b05b co.eclecticlight.AsmAttic because it was launched and still stopped.
com.apple.processmanager LAUNCH: 0x0-0x5b05b co.eclecticlight.AsmAttic starting stopped process.
com.apple.launchservices LAUNCH: Sending 0x0-0x5b05b 3083 co.eclecticlight.AsmAttic a SIGCONT to get process started ( it was launched in the stopped state )
This is the cue for launchd to ‘uncork’ the executable and create the process launchd pid/3083 [AsmAttic] uncorking exec source upfront
launchd pid/3083 [AsmAttic] created
After that, you should see log entries from the app at last, retrieving the UID and loading its preferences AsmAttic Retrieve User by ID
AsmAttic Loading Preferences From User CFPrefsD
Key points
RunningBoard monitors and may manage the life cycle of apps, from launch to exit, and does so by acquiring assertions about the app’s status.
RunningBoard now plays an active part in app launch, and fills the log with its entries.
Soon after the start of the launch process, its job description is a mine of useful information about the app being launched.
It’s normal for app launch entries to expect the app’s imminent death before it’s launched successfully.
Don’t be surprised or concerned to see RunningBoard mentioned in early crash reports.
Most urban societies have had some form of police, in addition to soldiers and armed guards. In the Roman Empire these were known as lictors, employed to act as bodyguards to magistrates, who could also arrest suspects and punish offenders under the magistrate’s authority.
Henryk Siemiradzki (1843–1902), Christian Dirce (1897), oil on canvas, 263 x 530 cm, Muzeum Narodowe w Warszawie, Warsaw, Poland. Wikimedia Commons.
Henryk Siemiradzki’s Christian Dirce of 1897 refers to Dirce, a figure in Greek mythology who was killed by being tied to the horns of a bull. Accounts of Roman martyrdoms report that the killing of Christian women sometimes occurred in enactments of the death of Dirce, hence the scene shown here, in which a woman’s near-naked body is draped over the body of a bull. Siemiradzki shows the emperor and his entourage, including two lictors holding their fasces, symbolic rods and axes, gazing at the grim aftermath. The word Fascism is derived from the fasces, which are themselves often symbolic of Fascist groups.
Various police forces evolved across Europe after the Middle Ages, but it wasn’t until the early nineteenth century that they became recognisable in modern form, with organised professionals. Although by no means the first, the city of London’s Metropolitan Police force was created by Act of Parliament in 1829, and quickly became known as Peelers after the minister responsible.
These police forces adopted distinctive dress, typically dark blue, to set them apart from civil guard and other military formations. Most also wore headgear that made them instantly recognisable as officers of the law.
Jules Breton (1827–1906), The Gleaners (1854), oil on canvas, 93 × 138 cm, The National Gallery of Ireland/Gailearaí Náisiúnta na hÉireann, Dublin, Ireland. The Athenaeum.
Jules Breton’s first masterpiece, The Gleaners (1854), shows their oversight by the garde champêtre or village policeman, an older man distinguished by his official hat and armband, who was probably an army veteran.
William Powell Frith (1819–1909), engraved by Francis Holl (1866) The Railway Station (1862), original oil on canvas, this print mixed media engraving on wove, finished with hand colouring, 66 x 123 cm, Private collection. Wikimedia Commons.
William Powell Frith’s The Railway Station (1862) is set in the crowded and busy Paddington railway station in London that had only been completed a decade earlier by the great Victorian engineer Isambard Kingdom Brunel. The centre of action is at the right of the painting, where an arrest is being made, shown in the detail below. A man dressed in brown clothes is about to board the train, within which a woman stares aghast at the scene. Two Scotland Yard detectives, complete with top hats, are in the process of serving him a warrant for his arrest, the other stood ready with a pair of handcuffs.
William Powell Frith (1819–1909), engraved by Francis Holl (1866) The Railway Station (detail) (1862), original oil on canvas, this print mixed media engraving on wove, finished with hand colouring, 66 x 123 cm, Private collection. Wikimedia Commons.
Police forces came to the fore later in the century when industrial unrest spread across the coalfields of Europe.
Alfred Philippe Roll (1846–1919), Miners’ Strike (1880), original badly damaged, shown here as reproduction from ‘Le Petit Journal’, 1 October 1892, further details not known. Wikimedia Commons.
One of the first prominent paintings of a strike is Alfred Philippe Roll’s Miners’ Strike, exhibited in the Salon of 1880 or perhaps the following year. It’s most probably based on a strike at Denain in the Nord-Pas de Calais coalfield of that year. It shows the desperate and increasingly worrying gathering of striking miners and their families. A woman is restraining one man from throwing a rock at the pithead buildings. Mounted police are present, handcuffing one of the strikers.
Police also became involved in the regulation of prostitution in some cities.
Christian Krohg (1852–1925), Albertine in the Police Doctor’s Waiting Room (1885-87), oil on canvas, 211 x 326 cm, Nasjonalgalleriet, Oslo, Norway. Wikimedia Commons.
Just before Christmas 1886, Christian Krohg’s first novel Albertine was published by a left-wing publisher. Its central theme is prostitution in Norway at the time, and the police quickly seized all the copies they could find, banning it on the grounds of violating the good morals of the people. At the same time as he was writing that novel, Krohg had been working on his largest and most complex painting: Albertine in the Police Doctor’s Waiting Room (1885-87).
In the novel, Albertine starts as a poor seamstress, who is mistaken for a prostitute by the police officer in charge of the section controlling prostitutes. He plies her with alcohol then rapes her. She is summoned to be inspected by the police doctor, whose examination further violates her, making her think that she is destined to be a prostitute, and that is, of course, exactly what happens.
Albertine isn’t the prominent woman in the centre looking directly at the viewer: Krohg’s heroine is the simple and humble country girl at the front of the queue to go into the police doctor for inspection. Behind her is a motley line of women from a wide range of situations. At the right, in the corner of the room, is another country girl with flushed cheeks. Others are apparently more advanced in their careers, and stare at Albertine, whose profiled face is barely visible from behind her headscarf. Barring the way to the surgery door, and in control of the proceedings, is a policeman.
Erik Henningsen (1855–1930), Summum jus, summa injuria. Infanticide (1886), oil on canvas, 78.5 x 117 cm, The Hirschsprung Collection, Copenhagen, Denmark. Wikimedia Commons.
In Denmark, Erik Henningsen’s first major painting bears the enigmatic title of Summum jus, summa injuria. Infanticide (1886). The Latin quotation comes from Cicero’s De Officiis I, 33, and literally means the highest law, the greatest injustice. It is a warning still used that strict application of rights and the law carries the danger of doing some people a huge injustice, and Henningsen’s narrative is an important example of a serious social and legal problem at the time.
Two labourers are digging a small pit at the side of a track across sand dunes. They are supervised by two policemen, one of whom keeps a written record. Behind and to the right is another policeman who holds a young woman by the elbow. She looks down as she is petting a dog.
The subtitle provides the clue as to what is going on. The labourers are trying to find the body of a baby, who is the subject of a police investigation. The young woman is the child’s mother. Unmarried, she had the baby in secret, smothered it at birth, and disposed of its body. She knows that if her baby is discovered, her punishment will be severe. But this was the only course open to her, as having a baby out of wedlock was against accepted religious and moral standards of the day.
Erik Henningsen (1855–1930), Farmers in the Capital (1887), oil, further details not known. Wikimedia Commons.
The following year, Henningsen’s Farmers in the Capital (1887) shows migrants freshly arrived in Copenhagen from the country. The father is speaking to a mounted policeman, presumably asking him for directions to their lodgings.
Christian Krohg (1852–1925), The Struggle for Existence (1889), oil on canvas, 300 x 225 cm, Nasjonalgalleriet, Oslo, Norway. Wikimedia Commons.
Krohg’s The Struggle for Existence (also translated as The Struggle for Survival) (1889) shows Karl Johan Street in Oslo in the depths of winter, almost deserted except for a tight-packed crowd of poor women and children queuing for free bread. A policeman, wearing a heavy coat and fur hat, walks in the distance, down the middle of the icy street, detached from the scene.
Erik Henningsen (1855–1930), Evicted (1892), oil on canvas, dimensions not known, Statens Museum for Kunst (Den Kongelige Malerisamling), Copenhagen, Denmark. Wikimedia Commons.
Henningsen’s Evicted from 1892 shows a family of four being evicted into the street in the winter snow. With them are their meagre possessions, including a saw suggesting the father may be a carpenter. In the background he is still arguing with a policeman.
José Uría y Uría (1861–1937), After a Strike (1895), oil on canvas, 250 x 380 cm, Museo de Bellas Artes de Asturias, Oviedo, Spain. Wikimedia Commons.
José Uría’s After a Strike, from 1895, revolves around a strike and its violent consequence. The scene is a large forge that’s apparently standing idle because of a strike. At the far right is a row of mounted police, and what may be lifeless bodies laid out on the ground. Inside the factory a woman, presumably a wife, kneels and embraces her child, beside what is presumably the dead body of her husband, who was a worker there. Close to his body is a large hammer, apparently the instrument of his death. In the distance, one of two policemen comfort a younger woman.
The role of police forces has remained as controversial ever since.
Somewhen around late versions of macOS Monterey, and certainly by the release of Ventura, macOS started to use cryptexes to load Safari and parts of the operating system including dyld caches, rather than installing them to the Data volume. Over a period of three months, cryptexes were also used to install Rapid Security Responses (RSRs) in an experiment that was quickly discontinued. What I hadn’t realised until recently was that they are also used to deliver much of the additional components required to support Apple Intelligence features in Apple silicon Macs. This article looks as how that works.
Cryptexes
These first appeared on Apple’s customised iPhone, its Security Research Device, which uses them to load a personalised trust cache and a disk image containing corresponding content. Without the cryptex, engineering those iPhones would have been extremely difficult. According to its entry in the File Formats Manual from five years ago (man cryptex), ‘A cryptex is a cryptographically-sealed archive which encapsulates a well-defined filesystem hierarchy. The host operating system recognizes the hierarchy of the cryptex and extends itself with the content of that hierarchy. The name cryptex is a portmanteau for “CRYPTographically-sealed EXtension”.’
In practice, a cryptex is a sealed disk image containing its own file system, mounted at a randomly chosen location within the root file system during the boot process. Prior to mounting the cryptex, macOS verifies it matches its seal, thus hasn’t been tampered with. Managing these cryptexes is the task of the cryptexd service with cryptexctl. Because cryptexes aren’t mounted in the usual way, they’re not visible in mount lists such as that produced by mount(8).
System cryptexes
Once kernel boot is well under way, APFS mounts containers and volumes in the current boot volume group, followed by others to be mounted at startup. When those are complete, it turns to mounting and grafting the three standard system cryptexes:
os.dmg, around 6 GB (macOS 15.5), containing system components such as dyld caches;
app.dmg, around 23 MB, containing Safari and supporting components;
os.clone.dmg, apparently a copy of os.dmg and the same size.
AI cryptex collection
About 5 seconds later, and over 14 seconds after APFS first started work, it checks and grafts a series of 23 cryptexes primarily involved with Apple Intelligence features. These are handled one at a time in succession, each reported in a sequence of log entries as follows (times in seconds after an arbitrary start).
First the Image4 file containing the cryptex is validated 9.434431 root_hash_execution_cb_mobile_asset:3066: image4_trust_evaluate: successfully validated the payload and the manifest
Then it’s grafted into the file system of the Data volume as a ‘PFK volume’. In this extract I omit the bulk of the cryptex’s name using […] for the sake of brevity. 9.434465 apfs_graft:695: disk3s5 Grafting on a PFK volume
9.434509 graft_dev_init:480: disk3 UC_[…]_Cryptex.dmg GRAFT (compiled @ Apr 22 2025 19:49:43)
9.434514 graft_dev_init:484: disk3 UC_[…]_Cryptex.dmg device_handle block size 4096 real block size 4096 block count 11264 features 0 internal VEK
9.434695 nx_mount:1308: UC_[…]_Cryptex.dmg initializing cache w/hash_size 512 and cache size 512
9.437484 nx_mount:1630: UC_[…]_Cryptex.dmg checkpoint search: largest xid 15, best xid 15 @ 7
9.437497 nx_mount:1657: UC_[…]_Cryptex.dmg stable checkpoint indices: desc 6 data 31
9.438117 er_state_obj_get_for_recovery:8420: UC_FM_LANGUAGE_INSTRUCT_3B_CONC No ER state object for volume RevivalB13M201388.UC_[…]_Cryptex - rolling is not happening, nothing to recover.
9.438124 apfs_log_op_with_proc:3263: UC_FM_LANGUAGE_INSTRUCT_3B_CONC grafting volume RevivalB13M201388.UC_[…]_Cryptex, requested by: mobileassetd (pid 457); parent: launchd (pid 1)
Note the volume name starts with Revival. Names of all other cryptex volumes in the AI collection start with the same code name, except for the PKI cryptex examined below, which uses Creedence instead. Perhaps these are a reference to Creedence Clearwater Revival?
The root hash of the cryptex file system is then authenticated 9.438156 graft_dev_blockmap_lut_switch_to_metadata_based_if_needed:1312: UC_FM_LANGUAGE_INSTRUCT_3B_CONC lut contains 26 extents, 3 of which contain metadata
9.438160 is_root_hash_authentication_required_osx:387: UC_FM_LANGUAGE_INSTRUCT_3B_CONC Release kext with internal build: 0, ARV disabled: 0, booting xid: 0
9.438164 is_root_hash_authentication_required_osx:418: UC_FM_LANGUAGE_INSTRUCT_3B_CONC strict graft, root hash authentication failure is required
9.438167 is_root_hash_authentication_required:557: UC_FM_LANGUAGE_INSTRUCT_3B_CONC Strict Graft, root hash authentication is required
9.438179 authenticate_root_hash:642: UC_FM_LANGUAGE_INSTRUCT_3B_CONC successfully validated on-disk root hash
9.438191 apfs_lookup_ge_jobj_id:5028: disk3s5 Found OBJID 0x66a1b8 type 3
The graft is then completed. 9.438195 apfs_graft:1045: disk3s5 Graft ino 6557986, jobj_id range 6725836+76
9.438396 apfs_graft:1138: disk3s5 successfully grafted ino 6557986 on dir 6725835, dev_name [UC_[…]_Cryptex.dmg]
Fortunately, these log entries provide the inode number for the location of the grafted cryptex, and that can be used in Mints to obtain its full path.
Among the AI cryptex collection is a secure public key infrastructure (PKI) trust store, located at /System/Library/AssetsV2/com_apple_MobileAsset_PKITrustStore/purpose_auto/[…].asset/AssetData/Restore/SECUREPKITRUSTSTOREASSETS_SECUREPKITRUSTSTORE_Cryptex.dmg
In the log, this is recorded as being 4.2 MB in size, and that is the same size as reported for the .dmg file by the Finder. Disk images are in APFS (Case-sensitive) format, and might be identical to their equivalents provided for iOS and iPadOS.
When mounted, that disk image becomes a volume named Creedence11M6270.SECUREPKITRUSTSTOREASSETS_SECUREPKITRUSTSTORE_Cryptex. That contains many property lists, certificate data, a SystemRootCertificates keychain, and two property lists that are grafted into /System/Library/CoreServices.
The names of all 23 cryptex disk images included in the macOS 15.5 AI cryptex collection are given in the Appendix. All are given as being compiled at Apr 22 2025 19:49:43, the same as the system cryptexes, implying that they were installed as part of the macOS 15.5 update. The whole sequence of processing the AI cryptexes took 0.78 seconds to complete, and the total size of disk images mounted in that period was 7.2 GB, which is similar to the reported size of additional files required to support AI.
Conclusions
Apple silicon Macs running macOS 15.5 with AI enabled load 23 additional cryptexes to support AI, totalling 7.2 GB.
Those AI cryptexes are grafted into the Data volume, in paths starting /System/Library/AssetsV2.
All except one have volume names starting with Revival
One cryptex is a secure PKI trust store, whose volume name starts with Creedence instead.
These cryptexes are installed and updated as part of macOS updates, although they could also be installed or updated separately, for example when AI is enabled.
If a Mac shows an unusual mounted volume with a name starting with Creedence or Revival, that’s almost certainly the respective disk image, which should normally be hidden and not visible in the Finder.
Appendix
Disk image names for the AI cryptex collection in macOS 15.5 (Apple silicon):
Apple has just released updates to XProtect for all supported versions of macOS, bringing it to version 5304, and to XProtect Remediator for all macOS from Catalina onwards, to version 152. As usual, Apple doesn’t release information about what security issues these updates might add or change.
Yara definitions in this version of XProtect add two private rules for Shebang, to match shell scripts by ‘shebang’, and _golang_macho, to match machos compiled by Golang. There are also 19 new rules for a novel family of what appear to be stealers based on the name BONZAI, including MACOS.BONZAIBONANZA.AUTO, MACOS.BONZAIBONANZA.TAAP, MACOS.BONZAIBONANZA.TAFI, MACOS.BONZAIBONANZA.VACA, MACOS.BONZAIBONANZA.VASN, MACOS.BONZAIBONANZA.FU, MACOS.BONZAIBONANZA.SC, MACOS.BONZAIBARRICADE.PE, MACOS.BONZAIBARRICADE.PA, MACOS.BONZAIBARRICADE.KE, MACOS.BONZAIBLASTER.FU, MACOS.BONZAIBLASTER, MACOS.BONZAIBLASTER.TA, MACOS.BONZAIBONDER.SO, MACOS.BONZAIBONDER.PE, MACOS.BONZAIBONDER.TEPL, MACOS.BONZAIBONDER.LA, MACOS.BONZAIBONDER.FU, and MACOS.BONZAIBANANA.
XProtect Remediator doesn’t change the list of scanner modules.
There are changes to the list of Bastion rule 2 paths, and four new Bastion rules 14-17. These cover sending AppleEvents to browsers, the Finder and Terminal, mach-lookup for com.apple.pasteboard.1, and writing to a long list of shell-related hidden directories in the user’s Home folder.
These are probably the greatest changes to XProtect’s Yara rules and Bastion rules for more than a year.
You can check whether these updates have been installed by opening System Information via About This Mac, and selecting the Installations item under Software.
A full listing of security data file versions is given by SilentKnight and SystHist for El Capitan to Tahoe available from their product page. If your Mac hasn’t yet installed this update, you can force it using SilentKnight or at the command line.
If you want to install these as named updates in SilentKnight, their labels are XProtectPayloads_10_15-152 and XProtectPlistConfigData_10_15-5304.
Sequoia and Tahoe systems only
The XProtect update has already been released for Sequoia and Tahoe via iCloud. If you want to check it manually, use the Terminal command sudo xprotect check
then enter your admin password. If that returns version 5304 but your Mac still reports an older version is installed, you may be able to force the update using sudo xprotect update
By 1915, Robert Polhill Bevan (1865–1925) was treasurer of the London Group, successor to Walter Sickert’s Camden Town Group, and had formed his own group centred on his studio in Cumberland Market, Camden Town, London. The latter exhibited at the Goupil Gallery, London, and was later to be joined by Edward McKnight Kauffer and CRW Nevinson, who was to achieve fame as a War Artist.
Despite the landscapes he painted in the countryside of the Blackdown Hills in East Devon, Bevan’s more acclaimed paintings were mainly views in London, particularly those of Saint John’s Wood and Belsize Park.
Robert Bevan (1865–1925), Hay Carts, Cumberland Market (1915), oil on canvas, 47.9 x 61 cm, Yale Center for British Art, New Haven, CT. Wikimedia Commons.
Hay Carts, Cumberland Market from 1915 is another view of London’s last hay market, close to Bevan’s studio. The bales shown were made by mechanical baling machines and brought to London by barge.
Robert Bevan (1865–1925), The Green House, St John’s Wood (c 1918), oil on canvas, 62.3 x 81 cm, Art Gallery of South Australia, Adelaide, Australia. Wikimedia Commons.
The Green House, St John’s Wood from about 1918 shows one of many mansions that had been built in this former suburb of London, developed into low-density housing for the more affluent of the nineteenth century. This area is now known for being home to cricket with the major ground of Lord’s, and the Abbey Road Studios used by the Beatles and other famous bands. Bevan introduces a motor taxi opposite two horse-drawn carts, signalling the decline of the latter.
Robert Bevan (1865–1925), The Caller at the Mill (1918-19), oil on canvas, 55.9 x 66 cm, Yale Center for British Art, New Haven, CT. Wikimedia Commons.
The Caller at the Mill from 1918-19 probably shows a scene in East Devon, painted during one of Bevan’s summer visits.
Robert Bevan (1865–1925), The Ford (1918-19), oil on canvas, 55.9 x 66 cm, Yale Center for British Art, New Haven, CT. Wikimedia Commons.
Also in typical Blackdown Hill country is The Ford, from the same period.
Robert Bevan (1865–1925), A Devon Cottage (Luppitt) (c 1920), oil on canvas, dimensions not known, Private collection. Wikimedia Commons.
Bevan painted A Devon Cottage (Luppitt) in about 1920, in the same area to the north of Honiton.
In 1922, Bevan was elected a member of the New English Art Club.
Robert Bevan (1865–1925), Aldwych (1924), oil on canvas, 62.2 x 81.3 cm, Yale Center for British Art, New Haven, CT. Wikimedia Commons.
He painted this view of Aldwych in central London in 1924. This is a crescent off the Strand, to the east of Charing Cross. At the left is a motor omnibus, while drinking at the water-trough beneath the memorial is one of the remaining working horses of London, which by now were well in decline.
Robert Bevan (1865–1925), Mount Stephen (1924), oil on canvas, dimensions not known, Private collection. Wikimedia Commons.
Mount Stephen from 1924 shows one of the farms close to Luppitt in East Devon, presumably painted during one of Bevan’s summer visits.
I also have one undated watercolour of Bevan’s.
Robert Bevan (1865–1925), Landscape with Three Trees (date not known), watercolour on moderately thick, moderately textured, beige laid paper mounted on moderately thick, moderately textured, beige wove paper, 25.4 x 34.1 cm, Yale Center for British Art, New Haven, CT. Wikimedia Commons.
Landscape with Three Trees was most probably painted en plein air in the south-west of England, as an alternative to his early oil sketches.
Robert Bevan died of cancer of the stomach on 8 July 1925, in London. The following year his life and work were remembered in a retrospective, but he didn’t gain the recognition he deserved until his centenary in 1965, and remains seriously underrated even today.
References
Wikipedia.
Robert Upstone (ed) (2008), Modern Painters: The Camden Town Group, Tate Publishing. ISBN 978 1 85437 781 4.
This week’s batch of app updates includes two for working with metadata, a fun obfuscator of text, and my in-house performance test for storage. In each case, they have been given a new app icon that should display well in all versions of macOS from Big Sur to Tahoe. Their windows have been overhauled to accommodate Tahoe’s larger controls, and they have been rebuilt.
Spotlight and metadata
Metamer gives access to 16 of the most useful types of metadata that can be saved as extended attributes to any file, and others that are text-based if you wish. It has a built-in scratchpad you can use to assemble groups of keywords, for instance. It thus gives access to a wide range of metadata that you can use in Spotlight search.
Metamer version 1.6 is now available from here: metamer16
from its Product Page, and via its auto-update mechanism.
To accompany that is Spotcord, which scans folders to build vocabularies of keyword metadata (kMDItemKeywords in Spotlight’s terms), subjects and other specified types. Although it can look for those Spotlight derives from image analysis, experience shows that few are likely to be accessible outside Spotlight itself. This is the first release version of Spotcord, which had lingered in beta far too long.
Spotcord version 1.0 is now available from here: spotcord10
and from its Product Page. It doesn’t use the auto-update mechanism, though.
Text obfuscation
Dystextia is a bit of fun using Unicode lookalike characters to obfuscate Roman text. For example, it will convert this line into
Dуstехtіа іs а bіt оf fun usіng Unісоdе lооkаlіkе сhаrасtеrs tо оbfusсаtе Rоmаn tехt.
or even
Dу𝚜𝚝ех𝚝іа і𝚜 а bі𝚝 о𝚏 𝚏𝚞𝚗 𝚞𝚜і𝚗ɡ U𝚗ісоⅾе ⅼоо𝚔аⅼі𝚔е с𝚑а𝚛ас𝚝е𝚛𝚜 𝚝о оb𝚏𝚞𝚜са𝚝е Rо𝚖а𝚗 𝚝ех𝚝․
if you prefer. This is easy to reverse using AI, but throws find and spellchecking out of the window.
Dystextia 1.9 is now available from here: dystextia19
from its Product Page, and via its auto-update mechanism.
Storage performance testing
In contrast, today’s last update is the app I use to measure read and write speeds of storage, from internal SSDs to external hard disks and NAS systems. This offers a flexible range of test methods, all based on the same API calls used by apps to ensure they represent real-world performance. This comes with a detailed Help book that explains how testing and data analysis are performed.
Stibium version 1.2 is now available from here: stibium12
from its Product Page, and via its auto-update mechanism.
Coming next
My next batch of updates concludes the straightforward ones, and will bring Dintch, Fintch and Cormorant.
I currently don’t intend updating any of my command tools like blowhole, as they appear to continue working fine in Tahoe.
I have started work on updates to Unhidden, SilentKnight/Skint, and the Viable family of virtualisers. Each needs more work before they will work properly with Tahoe, in the case of SilentKnight/Skint a complete new version designed for future macOS.
I currently don’t intend updating ArchiChect, Taccy, Signet, Scrub, LockRattler or the command tool silnite for Tahoe, as they’ve now been superseded or outdated. If you want one of those reinstated, please let me know.
During the 1920s, in the last years of his career, Lovis Corinth’s paintings reached a new peak, both in their quantity and their innovative exploration of colour and texture.
Lovis Corinth (1858–1925), Large Self-portrait in Front of Walchensee (1924), oil on canvas, 135.7 × 107 cm, Neue Pinakothek, Munich. Wikimedia Commons.
Although Corinth was clearly relishing this intensity, his Large Self-portrait in Front of Walchensee (1924) shows his race against the effects of age.
Lovis Corinth (1858–1925), The Trojan Horse (1924), oil on canvas, 105 × 135 cm, Staatliche Museen zu Berlin, Berlin. Wikimedia Commons.
The Trojan Horse (1924) is Corinth’s last major painting from classical myth, showing the wooden horse made by the Greeks in order to gain access to the city of Troy, so they could sack and destroy it. The lofty towers and impregnable walls of the city are in the background. The select group of Greek soldiers who undertook this commando raid have already been concealed inside the horse, and those around it are probably Trojans, sent out from the city to check it out before it was taken inside.
Although there are suggestions as to an allegorical relationship between this painting and the First World War, Troy had been a hot topic in Berlin since the excavations at Hisarlık in Turkey in the late nineteenth century by Heinrich Schliemann and Wilhelm Dörpfeld.
Lovis Corinth (1858–1925), Königsberger Marzipantorte (Royal Marzipan Cake) (1924), oil on panel, 55.5 × 71 cm, Westfälisches Landesmuseum für Kunst und Kulturgeschichte, Münster, Germany. Wikimedia Commons.
Corinth also painted for fun: this superb depiction of a Königsberger Marzipantorte (Royal Marzipan Cake) (1924) must have been completed at great speed before his family consumed his model.
Lovis Corinth (1858–1925), The Jochberg at Walchensee (1924), oil on canvas, 65 × 78 cm, Ostdeutsche Galerie Regensburg, Regensburg, Germany. Wikimedia Commons.
The Jochberg at Walchensee (1924) shows this 5,141 foot (1,567 metre) mountain dividing the Walchensee from the Kochelsee.
Lovis Corinth (1858–1925), Walchensee, Vegetable Garden (1924), oil on canvas, 70 × 90 cm, Private collection. Wikimedia Commons.
Walchensee, Vegetable Garden (1924) was painted away from his normal vantage point above the lake, to include the colours and textures of this vegetable patch.
Lovis Corinth (1858–1925), Walchensee (1924), watercolour on vellum, 50.4 × 67.7 cm, Staatliche Museen zu Berlin, Berlin. Wikimedia Commons.
Walchensee (1924) is a watercolour sketch reportedly painted on vellum.
Lovis Corinth (1858–1925), Carmencita, Portrait of Charlotte Berend-Corinth in Spanish Dress (1924), oil, 130 x 90 cm, Städelsches Kunstinstitut und Städtische Galerie, Frankfurt, Germany. Wikimedia Commons.
Carmencita, Portrait of Charlotte Berend-Corinth in Spanish Dress (1924) probably doesn’t refer directly to the famous Spanish dancer Carmen Dauset Moreno, who had died in 1910. Charlotte Corinth, or Berend-Corinth, had continued painting in the early twentieth century, and joined the Berlin Secession in 1912. She also painted actively when at their chalet. In 1933, she emigrated to the USA, where she produced the first catalogue raisonné of her husband’s paintings. She died in 1967, so I am unable to show any of her paintings.
Lovis Corinth (1858–1925), Wilhelmine in a Yellow Hat (1924), oil on canvas, 85 × 65 cm, Museum für Kunst und Kulturgeschichte, Lübeck, Germany. Wikimedia Commons.
Corinth painted members of his family more often at this time, as he probably suspected he was reaching the end of his artistic career. In Wilhelmine in a Yellow Hat (1924) his shy daughter is starting to show some of her mother’s vivacity.
Lovis Corinth (1858–1925), Thomas in Armour (1925), oil on canvas, 100 × 75 cm, Museum Folkwang, Essen, Germany. Wikimedia Commons.
Thomas in Armour (1925) shows Corinth’s older child, then 21, wearing the suit of armour that had appeared in several of Corinth’s paintings over the years, in a visual record of his son’s transition into adult life.
Lovis Corinth (1858–1925), Ecce Homo (1925), oil on canvas, 190 x 150 cm, Kunstmuseum Basel, Basel, Switzerland. Wikimedia Commons.
Corinth painted Ecce Homo at Easter, 1925, as an act of meditation to mark the festival. It shows the moment that Pilate presents Christ to the hostile crowd, just before the Crucifixion. Christ has been scourged, bound, and crowned with thorns, and Pilate’s words are quoted from the Vulgate translation, meaning behold, the man. In keeping with his earlier contemporary interpretations of the scenes of the Passion, Pilate (left) is shown as an older man in a white coat, and the soldier (right) wears a suit of armour.
Corinth completed this in four days. This was bought for the Nationalgalerie in Berlin in 1929, but in 1937 was condemned by the Nazi party as being ‘degenerate art’. Thankfully, it escaped destruction when it was bought by the art museum in Basel in 1939.
Lovis Corinth (1858–1925), The Beautiful Woman Imperia (1925), oil on canvas, 75 x 48 cm, Private collection. Wikimedia Commons.
The Beautiful Woman Imperia was one of the last paintings that Corinth completed in the late spring of 1925, and his final fleshly work. It’s based on Balzac’s anthology of tales Cent Contes Drolatiques from 1832-37. This shows the courtesan Imperia, naked in front of a priest, in surroundings suggesting contemporary decadent cabarets, or a far older ‘perfumed room’.
Lovis Corinth (1858–1925), Last Self-Portrait (1925), oil on canvas, 80.5 × 60.5 cm, Kunsthaus Zürich, Zürich. Wikimedia Commons.
Corinth’s Last Self-Portrait, painted just two months before his death in 1925, is unusual in showing him with his reflection in a mirror. He is now balding rapidly, his cheeks sunken, and his eyes are bloodshot and tired. That summer he travelled to the Netherlands to view Old Masters, including Rembrandt and Frans Hals. He developed pneumonia, and died at Zandvoort on 17 July, four days before his sixty-eighth birthday.
He had painted more than a thousand works in oil, and hundreds of watercolours. He also made more than a thousand prints, an area of his work that I haven’t touched on. Ironically, it was the rise of the Nazi party from 1933 that prevented him from achieving the international recognition his work deserved.
Lemoine S et al. (2008) Lovis Corinth, Musée d’Orsay & RMN. ISBN 978 2 711 85400 4. (In French.)
Czymmek G et al. (2010) German Impressionist Landscape Painting, Liebermann-Corinth-Slevogt, Arnoldsche. ISBN 978 3 89790 321 0.
I hope that you enjoyed Saturday’s Mac Riddles, episode 315. Here are my solutions to them.
1: It came with a tumbler from Camelot in 1993, then opened in 2008.
Click for a solution
PDF
It came with a tumbler (an acrobat) from Camelot (its original internal name) in 1993 (first released on 15 June 1993), then opened in 2008 (when it was adopted as an open ISO standard).
2: Replacement for 3 to avoid royalties with transparency has just turned three.
Click for a solution
PNG
Replacement for 3 (it was developed by Thomas Boutell and others to replace GIFs) to avoid royalties (those were imposed on GIFs because of their use of LZW compression) with transparency (it supports a transparency layer) has just turned three (its latest version 3.0 was released in June this year).
3: CompuServe animated its palette with 256 colours but we still can’t agree how to say it.
Click for a solution
GIF
CompuServe (released by CompuServe in 1987) animated (it supports animated images) its palette with 256 colours (it only supports palettes with 256 colours) but we still can’t agree how to say it (there has been a long-running dispute as to whether its ‘g’ is hard like ‘gift’ or soft like ‘gin’).
The common factor
Click for a solution
They were each intended to be portable, universal file formats.