A man, all alone, typing away at his computer. Or is he alone? The internet is a miraculous thing indeed.
"Hello, dear colleagues. I see you have found your way to the testing server. I am here to present to you the newest version of MSDOS - Mönkkönen's Secure and Democratic Operating System."
His brains are working, thoughts are flashing. Years of work have gone into the creation of his masterpiece. An entire new way of running a computer. If it works, if he can show these people how well this runs, he is sure to be world famous.
"The first thing you'll see is that it's, indeed, based on Unix. As the old adage says: Those who don't know Unix are condemned to reinvent it, poorly. I did not fall into that trap. The next thing you may have wondered about is this terminal. This is the first sign of the difference of this OS. We all share the same terminal. Well, it's more kind of a chatbox, as you see. However, I can give commands."
$ users | sort"The Guest0? users are those among you who will only observe. There are also some who will tamper a bit with the OS, they will recognize their names. They also have certain privileges. I'll return to that, as well as to the other users, in a minute."
The man leans backwards in his chair. A smile crosses his face. Then he returns to typing.
"About the democratic part. All of you, who are non-guest, will be able to launch a proposition of a command to launch. The command is then open for voting.
Now, with this structure, we can make a very secure operating system. Every user has some privileges the others don't have. Well, yes and no. Some have more privileges, some have different privileges, and there are some with the same privileges, every combination is possible. I shall list the different user types on this system in a moment. Also note that the other users are NOT human beings. Indeed, not. This is of mayor importance to the security of the system. All those users, each with different privileges, are run by different AIs. That way, because of the independence, they will retain the stability of the system, even if one makes a mistake or drops out. This, my colleagues, is the core of MSDOS. Now, before I continue, I'll give you the list of user types."
$ cat ./usertypes"As you can see, the list links usertypes with unrestricted commands. Now, I wish to conduct a test. I have gathered you to show how stable and secure this OS is. I, and the other Human users, will try to destabilize the system. The system, as a collection of AIs, will try to defend itself, as you'll see. Here we go..."
Virus: rm [restricted]
Okay, what the hell is going on, you're asking? Don't worry. Uber-geekish theme, I warned you. Anyway, a quick comparison:
Firewall: chmod Angel
Human: rm Wolf
Linker: ld Cupid
Recycler: unrm Aer
Screener: file Seer
User: null Villager
Virus: rm [restricted] Crazy War Veteran
The 'night' is when the Humans try to unbalance the OS. The 'day' is when the OS reacts. In the story, these are cycles of respectively minutes and microseconds, but that doesn't matter too much. We keep a weekly schedule.
As usual, I'll now start sending out the roles, with the usual blab about what to do. If anything is unclear (how could it be?), PM me.
Someone (I think it was Murska) pointed me to a weakness in my system last time. To prevent this, I'm going to replicate the text I'll send to the Users here. I'll let you figure out the weakness yourself.
Hello, $USERNAME. You're a User. The Humans are trying to wreck your system, and you don't like that. At night, you simply sleep() and don't echo() a word, at day, you can discuss and vote (but, actually, everyone can do that). Good luck.Daytime is planned ASAP, when the nighttime jobs are finished. I'll do it this way for our first day, because it's a day with two voting. After that day, things return to normal schedule.
Another thing. I'll handle the Screener [Seer] BEFORE the Linker [Cupid] the first night. Theoretically, it could make a difference.
I think that'll be it for now. Have fun.
[EDIT]All is out. Let me know if there are problems. Don't think I made mistakes, this time.
I've been thinking, I'm going to handle the night more strictly. It'll go like this from now on:
Angel, Wolves, Seer, Cupid (first night).
I think that'll be the best way to prevent any mistakes. Since only the Seer and Cupid require feedback at this moment, it doesn't matter that much, but it's the idea that counts.