<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://gunkies.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Bqt</id>
		<title>Computer History Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://gunkies.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Bqt"/>
		<link rel="alternate" type="text/html" href="https://gunkies.org/wiki/Special:Contributions/Bqt"/>
		<updated>2026-06-05T20:25:18Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.30.1</generator>

	<entry>
		<id>https://gunkies.org/w/index.php?title=Talk:PDP-11_Extended_Instruction_Set&amp;diff=28004</id>
		<title>Talk:PDP-11 Extended Instruction Set</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=Talk:PDP-11_Extended_Instruction_Set&amp;diff=28004"/>
				<updated>2022-10-28T07:17:37Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==XOR?==&lt;br /&gt;
&lt;br /&gt;
When talking about the PDP-11 EIS, it's a little complicated. You have the KE-11, which was the separate EIS option for the PDP-11/40, and you have all the other PDP-11s with EIS by default. The complication is that the instructions provided differ in that XOR was not included in the KE-11, but on all other models.&lt;br /&gt;
So the question is, should XOR be mentioned on this page or not? --[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 18:36, 27 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
: Actually, XOR ''was'' included in the base [[KD11-A]] of the -11/40, which is why it's not in the KE11-E. And there's also SOB, SXT, MARK, and RTT in the base KD11-A, which are not in the -11/20, -11/05 and -11/04, but are in all the later machines, including the LSI-11. Those are covered [[PDP-11 architecture#Added later|here]]. So I'm not sure there is an error? [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 22:43, 27 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
:: You are right that XOR was already in the base of the -11/40 instruction set. I should probably have thought that comment through a bit more. I usually make it simple for myself by just grouping XOR with the MUL/DIV/ASH/ASHC since it use the same register-destination format for the opcode. But technically, there are a few more instructions that exists on all models except for the 11/20. And I basically think of them all as being the EIS (or extended instruction set). So yes, also SOB/MARK/SXT/RTT. The 11/20 defined the basic instruction set. What was added in the 11/45 was then EIS. Just that the EIS option for the 11/40 is needed for some of those instructions the 11/45 added. But that options is called EIS. There is no clear definition of what EIS means from DEC, sadly. (Or none that I know of right now. I'll poke around some...) --[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 01:50, 28 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
::: I think the reason that XOR (and SOB, etc) weren't included in the KE11-E, but the others (MUL, etc) were, was purely pragmatic engineering. The four instructions added in the KE11-E (MUL, DIV, ASH, ASHC) used additional data path elements (internal registers, etc) that were on the KE11-E board; the other instructions (XOR, SOB, etc) could be accomplished with the basic data path elements already in the main CPU. That's all there was to it!&lt;br /&gt;
::: The KE11-E (with the additional data path elements needed for those instructions) did increase the cost of the -11/40 by a non-trivial amount; almost certainly a significant factor for a machine which was intended to be a 'low-cost' entry in the product line. I have an -11/40 price list from January, 1973; the base -11/40 was US$13K, and the KE11-E was US$1200. I am quite sure that's why they didn't just include the KE11-E functionality in the 'standard' -11/40, but made it an option.&lt;br /&gt;
::: Should I add that to the article? [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 06:56, 28 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
:::: I would agree with that position. But it is a conclusion we are drawing based on reasoning, not by any specific document from DEC. But I would probably vote for saying that in the article. And the basic instruction set is also all there is in 11/05 and 11/10 as well as the 11/04 if I remember right (in addition to the 11/15 and 11/20). --[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 09:17, 28 October 2022 (CEST)&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=Talk:PDP-11_Extended_Instruction_Set&amp;diff=28002</id>
		<title>Talk:PDP-11 Extended Instruction Set</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=Talk:PDP-11_Extended_Instruction_Set&amp;diff=28002"/>
				<updated>2022-10-27T23:50:03Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==XOR?==&lt;br /&gt;
&lt;br /&gt;
When talking about the PDP-11 EIS, it's a little complicated. You have the KE-11, which was the separate EIS option for the PDP-11/40, and you have all the other PDP-11s with EIS by default. The complication is that the instructions provided differ in that XOR was not included in the KE-11, but on all other models.&lt;br /&gt;
So the question is, should XOR be mentioned on this page or not? --[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 18:36, 27 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
: Actually, XOR ''was'' included in the base [[KD11-A]] of the -11/40, which is why it's not in the KE11-A. And there's also SOB, SXT, MARK, and RTT in the base KD11-A, which are not in the -11/20, -11/05 and -11/04, but are in all the later machines, including the LSI-11. Those are covered [[PDP-11 architecture#Added later|here]]. So I'm not sure there is an error? [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 22:43, 27 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
:: You are right that XOR was already in the base of the -11/40 instruction set. I should probably have thought that comment through a bit more. I usually make it simple for myself by just grouping XOR with the MUL/DIV/ASH/ASHC since it use the same register-destination format for the opcode. But technically, there are a few more instructions that exists on all models except for the 11/20. And I basically think of them all as being the EIS (or extended instruction set). So yes, also SOB/MARK/SXT/RTT. The 11/20 defined the basic instruction set. What was added in the 11/45 was then EIS. Just that the EIS option for the 11/40 is needed for some of those instructions the 11/45 added. But that options is called EIS. There is no clear definition of what EIS means from DEC, sadly. (Or none that I know of right now. I'll poke around some...) --[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 01:50, 28 October 2022 (CEST)&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=OS/8&amp;diff=28001</id>
		<title>OS/8</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=OS/8&amp;diff=28001"/>
				<updated>2022-10-27T23:29:10Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox OS&lt;br /&gt;
| name = OS/8&lt;br /&gt;
| creator = [[Digital Equipment Corporation|DEC]]&lt;br /&gt;
| year introduced = 1970?&lt;br /&gt;
| architecture = [[PDP-8 architecture|PDP-8]]&lt;br /&gt;
| type = [[Time-sharing]]&lt;br /&gt;
| multitasking = limited with multiuser&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
OS/8 was the primary [[operating system]] for the [[PDP-8 family|PDP-8]]. OS/8 is a [[single-user]] OS, used for support of [[application]] [[software]].&lt;br /&gt;
&lt;br /&gt;
All [[peripheral]] operations are handled without using [[interrupt]]s. The [[file system]] uses contiguous [[file]]s. [[Batch processing]] operation was supported by an extension.&lt;br /&gt;
&lt;br /&gt;
It is different from modern OS's as you don't change paths/drives you assign the DSK: volume to whatever disk it is you want to work from (basically, defining the default disk).&lt;br /&gt;
&lt;br /&gt;
== Example of usage ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
delete basic.*&lt;br /&gt;
deassign dsk:&lt;br /&gt;
assign rxa1: dsk:&lt;br /&gt;
squish sys:&lt;br /&gt;
&lt;br /&gt;
copy rxa0:&amp;lt;rxa1:*.sv&lt;br /&gt;
&lt;br /&gt;
R FRTS&lt;br /&gt;
ADVENT&lt;br /&gt;
(ESCAPE)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Some commands ==&lt;br /&gt;
&lt;br /&gt;
=== BASIC ===&lt;br /&gt;
&lt;br /&gt;
=== COPY ===&lt;br /&gt;
copy copys a file, but the syntax is different from most OS's...&lt;br /&gt;
&lt;br /&gt;
copy Destination:&amp;lt;source:FILES&lt;br /&gt;
&lt;br /&gt;
So that the follwing:&lt;br /&gt;
&amp;lt;pre&amp;gt;copy rxa0:&amp;lt;rxa1:*.sv&amp;lt;/pre&amp;gt;&lt;br /&gt;
copys all the .sv files from rxa1 to rxa0&lt;br /&gt;
&lt;br /&gt;
=== DELETE ===&lt;br /&gt;
deletes a file.  You can use wildcards.&lt;br /&gt;
&lt;br /&gt;
=== HELP ===&lt;br /&gt;
&lt;br /&gt;
=== ODT ===&lt;br /&gt;
ODT is the Octal Debugging Technique: Or the debugger.&lt;br /&gt;
&lt;br /&gt;
=== RUN ===&lt;br /&gt;
&lt;br /&gt;
=== SQUISH ===&lt;br /&gt;
Squish is like defrag, in that it'll actually delete files, and move stuff around so you can get the maximum free space..&lt;br /&gt;
&lt;br /&gt;
== Interesting notes ==&lt;br /&gt;
&lt;br /&gt;
OS/8 could run under another OS, [[RTS/8]], as a [[virtual machine|virtualized]] guest. This made OS/8 be a background task in the RTS/8 context, but for the user, it appeared as a normal OS/8 system.&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
&lt;br /&gt;
* [https://archive.org/details/bitsavers_decpdp8os8_39414792/page/n149/mode/2up OS/8 handbook]&lt;br /&gt;
&lt;br /&gt;
=== Running OS/8 ===&lt;br /&gt;
&lt;br /&gt;
* [http://simh.trailing-edge.com/software.html OS/8 Software Kit on DSK format]&lt;br /&gt;
* [https://raymii.org/s/articles/Running_ADVENT-on-the-PDP-8-with-SIMH.html Adventure running on OS/8]&lt;br /&gt;
&lt;br /&gt;
{{semi-stub}}&lt;br /&gt;
&lt;br /&gt;
[[Category: PDP-8 Operating Systems]]&lt;br /&gt;
[[Category: DEC Operating Systems]]&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=Talk:OS/8&amp;diff=28000</id>
		<title>Talk:OS/8</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=Talk:OS/8&amp;diff=28000"/>
				<updated>2022-10-27T23:25:39Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: /* Errors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Errors ==&lt;br /&gt;
&lt;br /&gt;
The article states that executables have to be on SYS:. This is incorrect. They can be on any device. However, the build-in command &amp;quot;R&amp;quot; requires that the executable be on SYS:, but there is also &amp;quot;RUN&amp;quot;, which includes the device name in the name of the executable to run.&lt;br /&gt;
&lt;br /&gt;
The article also mentions that RTS/8 allows for a virtual OS/8 instance, which is correct. However, it only allows for *one* such instance, so it's not possible for multiple users to have their own OS/8 instances using RTS/8. But there are non-DEC OSes for the PDP-8 that give each user their own virtual PDP-8 running OS/8. For example Multos-8. --[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 18:53, 27 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
: Well, I know little of OS/8; I expect you're correct. Any chance you could fix these issues? If so, 'thank you' in advance! [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 22:49, 27 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
:: Sure can do. I just don't want to go *too* wild. --[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 01:25, 28 October 2022 (CEST)&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=Talk:OS/8&amp;diff=27995</id>
		<title>Talk:OS/8</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=Talk:OS/8&amp;diff=27995"/>
				<updated>2022-10-27T16:53:46Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: Created page with &amp;quot; == Errors == The article states that executables have to be on SYS:. This is incorrect. They can be on any device. However, the build-in command &amp;quot;R&amp;quot; requires that the executa...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Errors ==&lt;br /&gt;
The article states that executables have to be on SYS:. This is incorrect. They can be on any device. However, the build-in command &amp;quot;R&amp;quot; requires that the executable be on SYS:, but there is also &amp;quot;RUN&amp;quot;, which includes the device name in the name of the executable to run.&lt;br /&gt;
&lt;br /&gt;
The article also mentions that RTS/8 allows for a virtual OS/8 instance, which is correct. However, it only allows for *one* such instance, so it's not possible for multiple users to have their own OS/8 instances using RTS/8. But there are non-DEC OSes for the PDP-8 that give each user their own virtual PDP-8 running OS/8. For example Multos-8.&lt;br /&gt;
--[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 18:53, 27 October 2022 (CEST)&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=2.11BSD&amp;diff=27994</id>
		<title>2.11BSD</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=2.11BSD&amp;diff=27994"/>
				<updated>2022-10-27T16:48:35Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''2.11BSD''' is a release of [[UNIX]] for the [[PDP-11]] by a consortium of [[CSRG]] and the [[USENIX Association]]. It only run on PDP-11 models with [[PDP-11 Memory Management|Supervisor mode]]. It started out basically the same as [[2.10BSD]], with some upgrades. This version is still getting updates and improvements today.&lt;br /&gt;
&lt;br /&gt;
Some of the things that were added were:&lt;br /&gt;
&lt;br /&gt;
* Support for full [[4.3BSD]] networking (using Supervisor mode)&lt;br /&gt;
* Support for long filenames&lt;br /&gt;
* 4.3BSD applications that were missing from 2.10BSD&lt;br /&gt;
&lt;br /&gt;
{{semi-stub}}&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
&lt;br /&gt;
* [https://minnie.tuhs.org/cgi-bin/utree.pl?file=2.11BSD 2.11BSD] - 2.11BSD at [[The Unix Heritage Society|TUHS]]&lt;br /&gt;
** [https://minnie.tuhs.org/cgi-bin/utree.pl?file=2.11BSD/doc/2.10/setup.2.11 Installing and Operating 2.11BSD on the PDP-11] - not in the most obvious place&lt;br /&gt;
&lt;br /&gt;
[[Category: PDP-11 Operating Systems]]&lt;br /&gt;
[[Category: Non-DEC Operating Systems]]&lt;br /&gt;
[[Category: CSRG BSD]]&lt;br /&gt;
[[Category: Unix-based OS's]]&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=2.10BSD&amp;diff=27993</id>
		<title>2.10BSD</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=2.10BSD&amp;diff=27993"/>
				<updated>2022-10-27T16:46:23Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''2.10BSD''' is a release of [[UNIX]] for the [[PDP-11]] by a consortium of [[CSRG]] and the [[USENIX Association]]. It ran on all PDP-11 models with [[PDP-11 Memory Management|memory management]]. It was basically the same as [[4.3BSD]] for the [[VAX]], to the point where there were no separate manuals, users were expected to just use the 4.3BSD ones. &lt;br /&gt;
&lt;br /&gt;
Some of the things that were added were:&lt;br /&gt;
&lt;br /&gt;
* Conversion of the entire system to a 4.3BSD structure, including&lt;br /&gt;
** 4.3BSD system calls&lt;br /&gt;
* inode, [[main memory]], and [[swapping|swap]] [[cache|caching]]&lt;br /&gt;
* 22-bit [[QBUS]] support&lt;br /&gt;
* [[RAM]] disk&lt;br /&gt;
* [[MSCP]] device driver ([[UDA50]], [[KLESI]], etc)&lt;br /&gt;
* 4.3BSD user software (libraries and applications)&lt;br /&gt;
&lt;br /&gt;
As a result of the efficiency-related changes, it was the fastest PDP-11 Unix. As an example, in a [[PDP-11/44]] with 4M of memory being in a student environment, it essentially never swapped, and only rarely did programs leave main memory.&lt;br /&gt;
&lt;br /&gt;
An another benchmark, [[ULTRIX-11]], V3.0, on a [[PDP-11/73]] took 1.1 system seconds to start [[vi]]. [[2.9BSD]] took approximately .9 system seconds (the reduction probably being attributable 2.9BSD's use of [[vfork]]). Once 2.10BSD had the vi image in its main memory cache, it took only .2 system seconds to start it.&lt;br /&gt;
&lt;br /&gt;
It did not support networking, but almost all the internal work to do so had been done (the later [[2.11BSD]], released shortly thereafter, did add networking support.)&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
&lt;br /&gt;
* [https://minnie.tuhs.org/cgi-bin/utree.pl?file=2.11BSD/doc/2.10 2.10BSD] - 2.10BSD documentation at [[The Unix Heritage Society|TUHS]]&lt;br /&gt;
** [https://minnie.tuhs.org/cgi-bin/utree.pl?file=2.11BSD/doc/2.10/announce.ms Second Distribution of Berkeley PDP-11 Software for UNIX] - announcement&lt;br /&gt;
&lt;br /&gt;
[[Category: PDP-11 Operating Systems]]&lt;br /&gt;
[[Category: Non-DEC Operating Systems]]&lt;br /&gt;
[[Category: CSRG BSD]]&lt;br /&gt;
[[Category: Unix-based OS's]]&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=2.9BSD&amp;diff=27992</id>
		<title>2.9BSD</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=2.9BSD&amp;diff=27992"/>
				<updated>2022-10-27T16:45:56Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox OS &lt;br /&gt;
| image = 2.9bsd.png&lt;br /&gt;
| caption = Logging into a 2.9BSD system&lt;br /&gt;
| name = 2.9 BSD&lt;br /&gt;
| creator = CSRG&lt;br /&gt;
| current version = 2.9 (1983)&lt;br /&gt;
| year introduced = 1983&lt;br /&gt;
| type = Multitasking, multiuser&lt;br /&gt;
| architecture = [[PDP-11]], theoretically portable&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''2.9 BSD''' is a full [[UNIX]] distribution from [[Computer Systems Research Group|CSRG]]. It is an indirect [[software port]] of [[4.1 BSD]]; the [[kernel]] uses a complicated series of [[overlay]]s to fit on a [[PDP-11]]. Unlike prior versions from [[BSD]] for the PDP-11, it does not rely on a prior [[UNIX Sixth Edition|V6]] or [[Unix Seventh Edition|V7]] system installation.&lt;br /&gt;
&lt;br /&gt;
== How do I get this to run?! ==&lt;br /&gt;
Installation is quite slow on [[SIMH]] but there is a guide, [[Installing 2.9 BSD on SIMH]].&lt;br /&gt;
I'll have install tapes, and a pre-made image later.&lt;br /&gt;
&lt;br /&gt;
== Games ==&lt;br /&gt;
The following games are in 2.9 BSD:&lt;br /&gt;
&lt;br /&gt;
*arithmetic     &lt;br /&gt;
*checkers        &lt;br /&gt;
*fortune         &lt;br /&gt;
*quiz            &lt;br /&gt;
*ttt&lt;br /&gt;
*backgammon      &lt;br /&gt;
*chess           &lt;br /&gt;
*hangman &lt;br /&gt;
*banner  &lt;br /&gt;
*ching           &lt;br /&gt;
*reversi&lt;br /&gt;
*maze&lt;br /&gt;
*rogue&lt;br /&gt;
*bcd&lt;br /&gt;
*cubic           &lt;br /&gt;
*moo             &lt;br /&gt;
*snake           &lt;br /&gt;
*wump&lt;br /&gt;
*bj              &lt;br /&gt;
*festoon         &lt;br /&gt;
*zork&lt;br /&gt;
&lt;br /&gt;
{{semi-stub}}&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
&lt;br /&gt;
* [https://minnie.tuhs.org/cgi-bin/utree.pl?file=2.9BSD 2.9BSD] - 2.9BSD at [[The Unix Heritage Society|TUHS]]&lt;br /&gt;
** [https://minnie.tuhs.org/cgi-bin/utree.pl?file=2.9BSD/usr/doc/2.9_kernel.ms Changes in the Kernel in 2.9BSD]&lt;br /&gt;
&lt;br /&gt;
{{Nav Unix}}&lt;br /&gt;
&lt;br /&gt;
[[Category: PDP-11 Operating Systems]]&lt;br /&gt;
[[Category: Non-DEC Operating Systems]]&lt;br /&gt;
[[Category: CSRG BSD]]&lt;br /&gt;
[[Category: Unix-based OS's]]&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=2.11BSD&amp;diff=27991</id>
		<title>2.11BSD</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=2.11BSD&amp;diff=27991"/>
				<updated>2022-10-27T16:44:36Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''2.11BSD''' is a release of [[UNIX]] for the [[PDP-11]] by a consortium of [[CSRG]] and the [[USENIX Association]]. It only ran on PDP-11 models with [[PDP-11 Memory Management|Supervisor mode]]. It was basically the same as [[2.10BSD]], with some upgrades.&lt;br /&gt;
&lt;br /&gt;
Some of the things that were added were:&lt;br /&gt;
&lt;br /&gt;
* Support for full [[4.3BSD]] networking (using Supervisor mode)&lt;br /&gt;
* Support for long filenames&lt;br /&gt;
* 4.3BSD applications that were missing from 2.10BSD&lt;br /&gt;
&lt;br /&gt;
{{semi-stub}}&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
&lt;br /&gt;
* [https://minnie.tuhs.org/cgi-bin/utree.pl?file=2.11BSD 2.11BSD] - 2.11BSD at [[The Unix Heritage Society|TUHS]]&lt;br /&gt;
** [https://minnie.tuhs.org/cgi-bin/utree.pl?file=2.11BSD/doc/2.10/setup.2.11 Installing and Operating 2.11BSD on the PDP-11] - not in the most obvious place&lt;br /&gt;
&lt;br /&gt;
[[Category: PDP-11 Operating Systems]]&lt;br /&gt;
[[Category: Non-DEC Operating Systems]]&lt;br /&gt;
[[Category: CSRG BSD]]&lt;br /&gt;
[[Category: Unix-based OS's]]&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=Talk:PDP-11_Extended_Instruction_Set&amp;diff=27990</id>
		<title>Talk:PDP-11 Extended Instruction Set</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=Talk:PDP-11_Extended_Instruction_Set&amp;diff=27990"/>
				<updated>2022-10-27T16:36:42Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: Created page with &amp;quot;==XOR?== When talking about the PDP-11 EIS, it's a little complicated. You have the KE-11, which was the separate EIS option for the PDP-11/40, and you have all the other PDP-...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==XOR?==&lt;br /&gt;
When talking about the PDP-11 EIS, it's a little complicated. You have the KE-11, which was the separate EIS option for the PDP-11/40, and you have all the other PDP-11s with EIS by default. The complication is that the instructions provided differ in that XOR was not included in the KE-11, but on all other models.&lt;br /&gt;
So the question is, should XOR be mentioned on this page or not?&lt;br /&gt;
--[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 18:36, 27 October 2022 (CEST)&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=User:Bqt&amp;diff=27987</id>
		<title>User:Bqt</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=User:Bqt&amp;diff=27987"/>
				<updated>2022-10-27T16:23:54Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: Created page with &amp;quot;Hi.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi.&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=RSX-11&amp;diff=27985</id>
		<title>RSX-11</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=RSX-11&amp;diff=27985"/>
				<updated>2022-10-27T16:13:26Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wp-orig}}&lt;br /&gt;
&lt;br /&gt;
{{infobox OS&lt;br /&gt;
 | name = RSX-11&lt;br /&gt;
 | creator = [[Digital Equipment Corporation|DEC]]&lt;br /&gt;
 | architecture = [[PDP-11]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''RSX-11''' is a family of [[real-time system|real-time]] [[operating system]]s for [[PDP-11]] computers, created by [[Digital Equipment Corporation|DEC]]; it was common in the late 1970s and early 1980s. It was designed for and much used in process control, but was also popular for program development.&lt;br /&gt;
&lt;br /&gt;
==Versions==&lt;br /&gt;
&lt;br /&gt;
RSX-11 existed in many versions: &lt;br /&gt;
*RSX-11A, C  -- small [[paper tape]] real time executives.&lt;br /&gt;
*RSX-11B -- small real time executive based on RSX-11C with support for [[disk]] I/O.  To start up the system, first DOS-11 was booted, and then RSX-11B was started.  RSX-11B programs used DOS-11 [[macro]]s to perform disk I/O.&lt;br /&gt;
*RSX-11D -- a [[multi-user]] disk-based system. Evolved into IAS.&lt;br /&gt;
*IAS -- a [[time-sharing]]-oriented variant of RSX-11D released at about the same time as the [[PDP-11/70]]. The first version of RSX to include DCL ([[Digital Command Language]]), which was originally known as PDS (Program Development System).&lt;br /&gt;
*RSX-11M -- a multi-user version that was an adaptation of the earlier RSX-11D for a smaller memory footprint, it was popular on all PDP-11s; [[Dave Cutler]] was the project leader.&lt;br /&gt;
*RSX-11S -- a memory-resident version of RSX-11M used in embedded real-time applications.&lt;br /&gt;
*RSX-11M-Plus -- a much extended version of RSX-11M, originally designed to support the [http://groups.google.com.au/groups?selm=7656%40shlump.nac.dec.com&amp;amp;rnum=2 multi-processor PDP-11/74], a computer that was never released, but also used widely as a standard operating system on the PDP-11/70.&lt;br /&gt;
*RSX-20F -- [[PDP-11/40]] [[front end]] processsor operating system for the [[KL10]] processor. Derived from RSX-11D and RSX-11M.&lt;br /&gt;
*Micro/RSX -- a stripped-down version of RSX-11M-Plus implemented specifically for the Micro/PDP-11, a low-cost multi-user system in a box, featuring ease of installation, no system generation, and a special documentation set.&lt;br /&gt;
*P/OS -- A version of RSX-11M-Plus that was targeted to DEC's PRO-325, [[PRO-350]], and PRO-380 line of PDP-11-based [[personal computer]]s.&lt;br /&gt;
*DOS/RV, OSRV-SM -- Two names for the clandestine clone of RSX-11M that was produced in the Socialist bloc. This system appeared to be an exact duplicate of RSX-11M save that the prompt was changed in the binary files.  According to other sources, RSX-11M source code might have been stolen by the KGB.  If read as Cyrillic, the name OSRV is an abbreviation for 'Operatsionnaya Sistema Realnogo(Razdelenija) Vremeni' -- Russian for 'Real Time(Time dividing) Operating System'. Not surprisingly, the six-character string 'OSRVSM' fits nicely in the same 16-bit [[RADIX-50]] word as 'RSX11M'.  But, there are differences between RSX and OSRV because of differences between SM and PDP' hardware and recognised by Soviet engineers bugs in RSX.  (OSRVM is the next model of OSRV-SM for the SM-1425.[http://web.archive.org/web/20050119123952/http://www.computer-museum.ru/histussr/sm1425.htm])  But RSX11M 'patched' for the SM's processor was used more often than rewritten OSRV.  That happened because of better work by the RSX-11' re-coders, stability of patched RSX, and a faster update cycle for SM-RSX drivers &amp;amp; patches, made possible by the SM users community.  OSRV and RSX driver interfaces are different &amp;amp; incompatible.&lt;br /&gt;
&lt;br /&gt;
==Descendants==&lt;br /&gt;
&lt;br /&gt;
Principles first tried in RSX-11M later appeared in DEC's [[Virtual Memory System|VMS]]. Microsoft's [[Windows NT]] system is a distant descendant of RSX-11M but is more directly descended from an object-oriented operating system Cutler developed for a RISC processor ([[DEC PRISM|PRISM]]) which was never released. This lineage is made clear in Cutler's foreword to &amp;lt;cite&amp;gt;Inside Windows NT&amp;lt;/cite&amp;gt;, quoted on Neil Rieck's [http://www3.sympatico.ca/n.rieck/docs/Windows-NT_is_VMS_re-implemented.html &amp;quot;Windows-NT&amp;quot;  is &amp;quot;VMS re-implemented&amp;quot;] page.&lt;br /&gt;
&lt;br /&gt;
==Quotes==&lt;br /&gt;
*&amp;quot;RSX was a separate path at DEC and the progenitor more than anything of VMS that went to NT via Dave Cutler.&amp;quot; -- [[Gordon Bell]],  Vice President, Research and Development, Digital Equipment Corporation.&lt;br /&gt;
&lt;br /&gt;
*&amp;quot;My first operating system project was to build a real-time  system called RSX-11M that ran on Digital's PDP-11 16-bit series of  minicomputers. ... a multitasking operating system that would run in 32 KB of memory with a  hierarchical file system, application swapping, real-time scheduling, and a set  of development utilities. The operating system and utilities were to run on the  entire line of PDP-11 platforms, from the very small systems up through the  PDP-11/70 which had memory-mapping hardware and supported up to 4 MB of memory.&amp;quot; -- Dave Cutler, [http://www3.sympatico.ca/n.rieck/docs/Windows-NT_is_VMS_re-implemented.html foreword] to &amp;lt;cite&amp;gt;Inside Windows NT&amp;lt;/cite&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==RSX-11 trivia==&lt;br /&gt;
*In order to support large programs within the PDP-11's relatively small [[virtual address]] space of 64 [[kilobyte|KB]], a sophisticated semi-automatic overlay system was used; for any given program, this overlay scheme was produced by RSX's ''taskbuilder'' program (called ''TKB''). If the overlay scheme was especially complex, taskbuilding could take a rather long time. Outside the office of the engineer in charge of ongoing maintenance of the taskbuilder was a whiteboard labeled &amp;quot;Taskbuilder wishlist&amp;quot;. For several years, the top item on the wishlist was &amp;quot;same day service&amp;quot;.&lt;br /&gt;
*Before DCL, the usual RSX prompt was &amp;quot;&amp;gt;&amp;quot; or &amp;quot;MCR&amp;gt;&amp;quot;, standing for the 'Monitor Console Routine'.&lt;br /&gt;
*When run on certain PDP-11 processors, each version of RSX displayed a characteristic light pattern on the front of the processor any time the system was idle (and the processor was executing the PDP-11 ''WAIT'' [[instruction]]). The RSX-11M light pattern was two sets of lights that swept outwards to the left and right from the center of the light display (or inwards if the IND indirect command file processor program was currently running in older versions of -11M). The IAS light pattern was a single bar of lights that swept leftwards. &amp;lt;!-- ??? Were RSTS and IAS the same? - (bqt: no, RSTS/E light pattern is not like this.) --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
* [[QIO]]&lt;br /&gt;
* [[Asynchronous System Trap|AST]]&lt;br /&gt;
* [[Event flag]]&lt;br /&gt;
* [[RSTS/E]]&lt;br /&gt;
* [[RT-11]]&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
&lt;br /&gt;
*Dan Brevik posted a [http://groups.google.com/groups?selm=g11Va.162679%24ye4.109589%40sccrnsc01&amp;amp;output=gplain history of precursors to RSX-11] in [http://groups.google.com/groups?hl=en&amp;amp;lr=&amp;amp;ie=UTF-8&amp;amp;safe=off&amp;amp;group=alt.sys.pdp11 alt.sys.pdp11].&lt;br /&gt;
&lt;br /&gt;
*[http://web.archive.org/web/20050404121912/http://www.demillar.com/RSX/ Dan's RSX-11 prehistory] contain documents which trace RSX-11 back through RSX-15 and the real time executive written by John Neblett  in the late 50's for the RW-300 process control computer. (Via archive.org, version fetched April 4, 2005)&lt;br /&gt;
&lt;br /&gt;
*Al Kossow posted some further [http://groups.google.com/groups?dq=&amp;amp;hl=en&amp;amp;lr=&amp;amp;ie=UTF-8&amp;amp;safe=off&amp;amp;selm=bij4na%24r8v%241%40spies.com notes on RSX-11] in [http://groups.google.com/groups?hl=en&amp;amp;lr=&amp;amp;ie=UTF-8&amp;amp;safe=off&amp;amp;group=alt.sys.pdp11 alt.sys.pdp11].&lt;br /&gt;
&lt;br /&gt;
[[Category: Real-Time Operating Systems]]&lt;br /&gt;
[[Category: PDP-11 Operating Systems]]&lt;br /&gt;
[[Category: DEC Operating Systems]]&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=Talk:SITS&amp;diff=27984</id>
		<title>Talk:SITS</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=Talk:SITS&amp;diff=27984"/>
				<updated>2022-10-27T15:59:51Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Virtual memory?==&lt;br /&gt;
&lt;br /&gt;
I've always understood 'virtual memory' to mean that not all the contents of a process' address space had to be resident in main memory for the process to run. (Any time it tries to use a missing 'piece' when it is running, it is stopped, the missing element is brought in, and then it is allowed to continue execution.) Was SITS really a 'virtual memory' OS, in that meaning of the term?&lt;br /&gt;
&lt;br /&gt;
The PDP-11 was in theory capable of supporting operation in that way (using the 8 'pages' - they're actually 'segments', as the two were classically defined, and were so called in the first version of the -11/45 processor manual; my theory is that DEC changed it to 'pages' for marketing reasons), but AFAIK no -11 OS ever actually did so - probably because the -11's process address space was so small, there was no real need/use for that - it was simpler to just swap the whole process in. But I'm not very familiar with any -11 time-sharing OS other than UNIX, so perhaps one did? [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 13:50, 19 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
: SITS has a .MAP system call that can manipulate the page table.  I haven't checked exactly how it's used, or what you can do.  It seems starting a PDUMP binary does ''not'' do demand paging.  However, it looks like .MAP can map in file pages, so maybe it's possible.&lt;br /&gt;
: I certainly have seen page faults due to a page being unmapped, then handled, and then the faulting instruction being restarted. [[User:Larsbrinkhoff|Larsbrinkhoff]] ([[User talk:Larsbrinkhoff|talk]]) 14:23, 19 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
:: That last does sound like virtual memory - even if it only happens on mapped file pages. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 15:09, 19 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
::: I've seen others misunderstanding virtual memory before. So I'll try and expand here. Virtual memory, just like virtual machine, means that you have the impression that you have your own instance of it (memory in this case), even though it don't actually exist. The fact that the memory isn't really the same as physical memory is the point. In your virtual memory, it appears as if *all* memory is there for you to use, and noone else exists. And it starts at address 0, and goes up to whatever top you might be able to address.&lt;br /&gt;
::: If there is a second process on the same machine, it also have virtual memory, which starts at address 0 and goes up from there. But even though both processes refer to address 0, they are not referring to the same memory cell. Because it's virtual memory, and not real. You commonly then have an MMU which maps this virtual memory at address 0 into some physical memory address. And at the physical memory level, these two processes obviously maps to different physical addresses.&lt;br /&gt;
:::&lt;br /&gt;
::: Now, obviously, this virtual memory might not even exist in physical memory at a certain point in time. If the process runs with basically all of virtual memory always mapped to physical memory, or none of it, we're talking about a system that uses swapping. The other option is that only parts of virtual memory is mapped to physical memory. This is then usually done on a per page bases. And this is then where demand paging comes into the picture, which is the technique used to allow more virtual memory than physical memory for an individual process. With swapping, you might have more virtual memory needed for all processes combined than you have physical memory, but an individual process cannot run unless all of it fits into physical memory. Demand paging is commonly done at the OS level, so programs are unaware that this happens, just as with swapping. But there are also examples of more &amp;quot;manual&amp;quot; demand paging. For example, overlays, which were a common technique on some PDP-11 systems, is demand paging done at the user level instead of the kernel, but often it is still done without the software explicitly being aware of it. Instead the compiler in combination with libraries solves it for you.&lt;br /&gt;
::: The locality of the memory is not a defining factor of whether it is virtual or not. Your program will not be able to tell if the system swaps the whole process in at once, or if it does demand paging. From your programs point of view, it appears the same. You have your memory, and it's all there. Every address of it. As opposed to if you don't have virtual memory, and you'll have to share the memory with whatever else might be running at the same time. (I'm sure everyone can think of some system or other where this was the case.)&lt;br /&gt;
:::&lt;br /&gt;
::: But demand paging and virtual memory are two different concepts. They work well together, but they are not interchangeable concepts.&lt;br /&gt;
:::&lt;br /&gt;
::: Speaking about the PDP-11 hardware. Yes, the initial 11/45 processor handbook used the term segments, but every later documentation changed the term to pages. And I would argue that pages are a more correct term for what the PDP-11 MMU have. Segments are usually described by a base address and a length, and all your address space are then remapped based on this. The PDP-11 MMU have 8 pages. Each start at a fixed virtual address, 8K apart. One page seamlessly starts where the previous one ends, and it's based on the virtual address that you use. Thus, depending on how much space we're talking about, you are going to be using one or several pages to map this. And of course, the mapping for each page do not care about what the mapping for the previous page was. No need for contiguous physical memory to map your virtual memory. The main reason some people want to talk about the PDP-11 MMU pages as segments are because there is a high level of control of the size of the page. Which basically means the pages are not fixed in size (well, the have a max size that you can't go beyond), which was traditionally seen on other machines. But nowadays, this is actually pretty common on most architectures. Almost no modern architecture have just one fixed size page anymore. And the size of the pages have grown. The 8K size of the PDP-11 page is not even considered that big by today's standards. So there is pretty much nothing about the PDP-11 MMU pages that match what a segmented memory model works like, but pretty much everything is the same as most any other paged MMU. So why should we not call it pages?&lt;br /&gt;
:::&lt;br /&gt;
::: Finally, demand paged systems can certainly be done on a PDP-11, even if it is hard to find examples of it being done. You could argue that the stack handling in BSD on the PDP-11 is using demand paging. Memory is not allocated for much of a stack when a program starts. When references happen below what is currently allocated for the stack, the stack is grown, and the additional memory gets mapped in as needed. However, once it's been mapped, it is then always in the address space, and a valid mapping exists at all times when the process is executing. So it's not a fully demand-paged example, but a bit of a hybrid thing.&lt;br /&gt;
::: --[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 17:50, 27 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
==Hardware support==&lt;br /&gt;
Could someone verify if SITS really expected an PDP-11/45 with EAE??? The EAE was a weird I/O option for the PDP-11 that mostly only appeared in the very early days, and primarily on the PDP-11/20. I would suspect this should really say EIS.&lt;br /&gt;
--[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 17:59, 27 October 2022 (CEST)&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=Talk:SITS&amp;diff=27983</id>
		<title>Talk:SITS</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=Talk:SITS&amp;diff=27983"/>
				<updated>2022-10-27T15:50:28Z</updated>
		
		<summary type="html">&lt;p&gt;Bqt: /* Virtual memory? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Virtual memory?==&lt;br /&gt;
&lt;br /&gt;
I've always understood 'virtual memory' to mean that not all the contents of a process' address space had to be resident in main memory for the process to run. (Any time it tries to use a missing 'piece' when it is running, it is stopped, the missing element is brought in, and then it is allowed to continue execution.) Was SITS really a 'virtual memory' OS, in that meaning of the term?&lt;br /&gt;
&lt;br /&gt;
The PDP-11 was in theory capable of supporting operation in that way (using the 8 'pages' - they're actually 'segments', as the two were classically defined, and were so called in the first version of the -11/45 processor manual; my theory is that DEC changed it to 'pages' for marketing reasons), but AFAIK no -11 OS ever actually did so - probably because the -11's process address space was so small, there was no real need/use for that - it was simpler to just swap the whole process in. But I'm not very familiar with any -11 time-sharing OS other than UNIX, so perhaps one did? [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 13:50, 19 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
: SITS has a .MAP system call that can manipulate the page table.  I haven't checked exactly how it's used, or what you can do.  It seems starting a PDUMP binary does ''not'' do demand paging.  However, it looks like .MAP can map in file pages, so maybe it's possible.&lt;br /&gt;
: I certainly have seen page faults due to a page being unmapped, then handled, and then the faulting instruction being restarted. [[User:Larsbrinkhoff|Larsbrinkhoff]] ([[User talk:Larsbrinkhoff|talk]]) 14:23, 19 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
:: That last does sound like virtual memory - even if it only happens on mapped file pages. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 15:09, 19 October 2022 (CEST)&lt;br /&gt;
&lt;br /&gt;
::: I've seen others misunderstanding virtual memory before. So I'll try and expand here. Virtual memory, just like virtual machine, means that you have the impression that you have your own instance of it (memory in this case), even though it don't actually exist. The fact that the memory isn't really the same as physical memory is the point. In your virtual memory, it appears as if *all* memory is there for you to use, and noone else exists. And it starts at address 0, and goes up to whatever top you might be able to address.&lt;br /&gt;
::: If there is a second process on the same machine, it also have virtual memory, which starts at address 0 and goes up from there. But even though both processes refer to address 0, they are not referring to the same memory cell. Because it's virtual memory, and not real. You commonly then have an MMU which maps this virtual memory at address 0 into some physical memory address. And at the physical memory level, these two processes obviously maps to different physical addresses.&lt;br /&gt;
:::&lt;br /&gt;
::: Now, obviously, this virtual memory might not even exist in physical memory at a certain point in time. If the process runs with basically all of virtual memory always mapped to physical memory, or none of it, we're talking about a system that uses swapping. The other option is that only parts of virtual memory is mapped to physical memory. This is then usually done on a per page bases. And this is then where demand paging comes into the picture, which is the technique used to allow more virtual memory than physical memory for an individual process. With swapping, you might have more virtual memory needed for all processes combined than you have physical memory, but an individual process cannot run unless all of it fits into physical memory. Demand paging is commonly done at the OS level, so programs are unaware that this happens, just as with swapping. But there are also examples of more &amp;quot;manual&amp;quot; demand paging. For example, overlays, which were a common technique on some PDP-11 systems, is demand paging done at the user level instead of the kernel, but often it is still done without the software explicitly being aware of it. Instead the compiler in combination with libraries solves it for you.&lt;br /&gt;
::: The locality of the memory is not a defining factor of whether it is virtual or not. Your program will not be able to tell if the system swaps the whole process in at once, or if it does demand paging. From your programs point of view, it appears the same. You have your memory, and it's all there. Every address of it. As opposed to if you don't have virtual memory, and you'll have to share the memory with whatever else might be running at the same time. (I'm sure everyone can think of some system or other where this was the case.)&lt;br /&gt;
:::&lt;br /&gt;
::: But demand paging and virtual memory are two different concepts. They work well together, but they are not interchangeable concepts.&lt;br /&gt;
:::&lt;br /&gt;
::: Speaking about the PDP-11 hardware. Yes, the initial 11/45 processor handbook used the term segments, but every later documentation changed the term to pages. And I would argue that pages are a more correct term for what the PDP-11 MMU have. Segments are usually described by a base address and a length, and all your address space are then remapped based on this. The PDP-11 MMU have 8 pages. Each start at a fixed virtual address, 8K apart. One page seamlessly starts where the previous one ends, and it's based on the virtual address that you use. Thus, depending on how much space we're talking about, you are going to be using one or several pages to map this. And of course, the mapping for each page do not care about what the mapping for the previous page was. No need for contiguous physical memory to map your virtual memory. The main reason some people want to talk about the PDP-11 MMU pages as segments are because there is a high level of control of the size of the page. Which basically means the pages are not fixed in size (well, the have a max size that you can't go beyond), which was traditionally seen on other machines. But nowadays, this is actually pretty common on most architectures. Almost no modern architecture have just one fixed size page anymore. And the size of the pages have grown. The 8K size of the PDP-11 page is not even considered that big by today's standards. So there is pretty much nothing about the PDP-11 MMU pages that match what a segmented memory model works like, but pretty much everything is the same as most any other paged MMU. So why should we not call it pages?&lt;br /&gt;
:::&lt;br /&gt;
::: Finally, demand paged systems can certainly be done on a PDP-11, even if it is hard to find examples of it being done. You could argue that the stack handling in BSD on the PDP-11 is using demand paging. Memory is not allocated for much of a stack when a program starts. When references happen below what is currently allocated for the stack, the stack is grown, and the additional memory gets mapped in as needed. However, once it's been mapped, it is then always in the address space, and a valid mapping exists at all times when the process is executing. So it's not a fully demand-paged example, but a bit of a hybrid thing.&lt;br /&gt;
::: --[[User:Bqt|Bqt]] ([[User talk:Bqt|talk]]) 17:50, 27 October 2022 (CEST)&lt;/div&gt;</summary>
		<author><name>Bqt</name></author>	</entry>

	</feed>