DEMOS was a Soviet operating system derived from BSD Unix.

  • Commands in BSD are derived from English words. Did DEMOS use these same commands, develop their own commands but retain the Roman alphabet, or create entirely Russian commands in the Cyrillic alphabet? (The first would be the least amount of work, but the last would be the most acceptable to Soviet users.)

  • Were the commands lower-case (as most BSD commands are) or upper-case?

  • 2
    Would it have been "acceptable to Soviet users" that they couldn't run any western pirated software, because none of the commands in shell scripts, none of the keywords in C, etc, were the same? Probably not...
    – alephzero
    Apr 1, 2021 at 19:41
  • 1
    Unless an environment variable requesting Russian error messages was set, there was little visible difference from the original. If memory serves, quite a few tools not expecting characters with the high bit set, and 0xFF (used for Ъ in the KOI-8 encoding) in particular, had to be corrected, so that Cyrillic comments in the source code were handled gracefully, etc.
    – Leo B.
    Apr 2, 2021 at 0:08
  • @LeoB. According to the page you linked to, KOI-8 leaves 0xFF undefined. Weirdly enough, since it looks like that's where Ъ should be. Apr 2, 2021 at 6:24
  • 2
    @OmarL That's where it was in practice. KOI-8 was used on the PDP-11-based BK-0010 as well; if you go to sisenis-1193.appspot.com/BK/bk.htm and type print chr$(255) (observing the currency sign ¤ character in place of a $), you'll see Ъ.
    – Leo B.
    Apr 2, 2021 at 7:18
  • 1
    Eearly releases of Demos were based on Unix Edition 7. Commands were in Latn, lower case. Apr 10, 2021 at 9:26

2 Answers 2


The commands are more or less the same ones we're used to from BSDs.

Examples cat and ls are clearly visible on this image from the Russian wikipedia page. enter image description here

But some things, such as the shell, appear to have translated error messages. For example, you can see Команда не найдена, or "Command not found". And this looks like it's running the C shell, exactly as western BSDs do.

  • C-shrll was more advanced than original Bourne shell At least for interactive work. Apr 10, 2021 at 9:29

DEMOS was an extension of 2.9 BSD, and all the commands, utilities, etc. were kept in place with their original names and everything. The major areas of said extension were:

  1. Add a rudimentary Russian "locale" support for KOI8-R (a modified KOI-8). Almost all of BSD was extremely ASCII-centric, so it took a very significant amount of time and effort to modify the code to make it work with the 8-bit encoding with its non-trivial collation rules. Also, add Russian-language messages everywhere in user space. The message language was controlled by an environ variable (sorry, don't remember which one now - LANG?).
  2. Modify existing or add new drivers for hardware specific to the USSR/Comecon-produced systems, including 8-bit support for terminal multiplexers and terminals.
  3. Produce docs and mans in Russian.

The localization efforts were also ported to more exotic USSR/Comecon architectures based on DEC VAX (with 4.3BSD as the base) and IBM 370 (off of Amdahl UTS). Things like Ingres were also modified to deal with KOI8-R.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .