36
$\begingroup$

Once upon a time, Pharaoh sat upon his high throne, overlooking his realm, a dark realm indeed, bounded on four sides. His anger burned against his Hebrew subjects, neither young and old, nor rich and poor were spared. In his wrath, he forced every Hebrew to line up under him. There would be no escape, for Pharaoh's watchful eyes never slept, not even at night. And any Hebrew found disobeying Pharaoh's decrees would do so only at their peril, their own lives and perhaps even the lives of their loved ones may be forfeit.

Pharaoh became envious of Moses, and after a long period, he eventually let the Hebrews go. What happened then is a story that would take a long time to tell, so I'll save it for another day. Anyhow, the Hebrews found that miraculously the swift, flowing river blocking their way had been parted on both sides, allowing them safe passage through Pharaoh's realm. The Hebrews headed away from Pharaoh in three directions.

But afterwards, Pharaoh realized his cowardice. His cowardice soon turned back into anger as he tried to call the Hebrews back. But it was too late, they had already left for good.

Now, speak Pharaoh's name so that you too may meet him when his mood is not foul.

(Your task is to uncover the identity of the Pharaoh. No, it is not Ramses or Imhotep or an actual historical Pharaoh. If your answer is correct the story should make sense from another angle. The identity of the Hebrews will also become clear.)

Hint

Moses is irrelevant to the story.

$\endgroup$
  • $\begingroup$ And our job is tu guess the Pharaoh's name? $\endgroup$ – Florian F Dec 9 '14 at 12:32
  • $\begingroup$ Yes, I have edited the question to make this clear. In otherwords, who or what is Pharaoh? $\endgroup$ – McMagister Dec 9 '14 at 12:34
  • $\begingroup$ Should this one be tagged lateral thinking ? $\endgroup$ – Falco Dec 10 '14 at 14:07
  • 1
    $\begingroup$ I guess it could. But don't riddles imply lateral thinking anyway? Maybe someone experienced can elaborate on the usage of the tag. $\endgroup$ – McMagister Dec 10 '14 at 15:48
  • $\begingroup$ @McMagister - If you want riddles to stay on this site, please upvote and support this question! $\endgroup$ – Rand al'Thor Dec 15 '14 at 17:53
40
$\begingroup$

The Pharaoh is a traffic light/signal.

Sits up on a high throne, forcing the Hebrews (cars) to line up beneath.

Emotions throughout refer to light colors:

  • Red is wrath : force them to line up
  • Green is "envious of Moses" : lets them go
  • Yellow is cowardice, which led to anger (red) again.

"Never slept, not even at night" is easy, since traffic lights are always (generally) on.

Disobeying comes at the peril of your life or your loved ones? Check.

"Swift, flowing river blocking their way" are cars going the other direction(s). Once parted, the Hebrews left in three directions (left/right/straight).

$\endgroup$
  • 4
    $\begingroup$ Congratulations, you got it. $\endgroup$ – McMagister Dec 9 '14 at 17:38
37
$\begingroup$

This is an allegorical tale of a

thread scheduler.


Explanation:

"Pharaoh" is the title given to the operating system (OS), presiding over system operations with perfect diligence and absolute control ("Pharaoh's watchful eyes never slept, not even at night"). Pharaoh's anger is his iron-clad execution schedule. Within Pharaoh's power is the ability to pause, lock down, even terminate threads at will. Unresponsive processes and their child processes are subject to his dictates ("any Hebrew found disobeying Pharaoh's decrees would do so only at their peril, their own lives and perhaps even the lives of their loved ones may be forfeit"). Old threads and new, processing-intensive juggernauts and simple daemons, none escape his harsh scrutiny ("neither young and old, nor rich and poor were spared").

Pharaoh presides over a system with four physical, software-opaque cores ("a dark realm indeed, bounded on four sides"), as well as a realtime data connection with a critical hardware device, "Moses". Running on these four cores are an endless stream of process threads—the "Hebrews", who patiently make their processing demands known, lining up in the execution queues awaiting their turn to perform Pharaoh's labour ("he forced every Hebrew to line up under him"). Pharoah is fiercely protective of CPU time, given Moses' critical importance and high-bandwidth realtime I/O demands. The data bus shared between Pharaoh and Moses is appropriately called "the river".

At one point Moses stops sending data back, leaving Pharaoh in a quandary on how to proceed ("Pharaoh became envious of Moses"). Eventually, after many microseconds of inactivity ("after a long period"), Pharoah decides to suspend data stream with Moses ("the swift, flowing river blocking [the] way had been parted on both sides"), and release three of his cores, allowing the Hebrews to execute on them ("allowing them safe passage through Pharaoh's realm ... The Hebrews headed away from Pharaoh in three directions").

However, as is so often the case with asynchronous hardware with RT processing demands, Moses suddenly begins belching out data again, threatening to fail and lose data if his processing demands aren't met. The CPU is starving. Rescheduling chaos ensues ("But afterwards, Pharaoh realized his cowardice"). Unfortunately, several of the Hebrew threads have entered critical code sections and uninterruptible communication with various other hardware and software resources, virtually guaranteeing a system crash or data corruption in the event of suspension or termination. They have been dispatched. It's too late to stop them ("His cowardice soon turned back into anger as he tried to call the Hebrews back. But it was too late, they had already left for good."). Moses would be left wanting.

Pharaoh's more common name is The Kernel, and indeed none of us want to meet him in a foul mood. Truly I tell you: He could blue-screen the very computer you're reading this on if he wanted to.

$\endgroup$
  • 6
    $\begingroup$ +1, this answer is simply exquisite. Although not what I intended, you have got the basic idea. Is there something kind of analogous with thread schedulers that we deal with everday? $\endgroup$ – McMagister Dec 9 '14 at 16:03
  • 8
    $\begingroup$ @McMagister: You do deal with them every day. $\endgroup$ – Lightness Races in Orbit Dec 9 '14 at 19:25
  • 1
    $\begingroup$ Far more poetic than the "right" answer. Well done. $\endgroup$ – Floris Dec 10 '14 at 16:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.