Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror

Slashdot videos: Now with more Slashdot!

  • View

  • Discuss

  • Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).

×
It's funny.  Laugh.

Kill -9 With a Doom Shotgun 378

Posted by CmdrTaco
from the now-that-is-cool dept.
Herschel Krustofsky writes "A researcher at the University of New Mexico has modified the Doom source to visualize processes and kill them! Finally you can really enjoy killing that Netscape process that just won't die!" Allright, I'm impressed.
This discussion has been archived. No new comments can be posted.

Kill -9 With a Doom Shotgun

Comments Filter:
  • Here is a quote [google.com] from Carmack on the release:

    "I can guarantee that I will be releasing the Quake source code, the only question is the timing. I don't intend to release it until all of the initial licensee projects have shipped. Anachronox looks to be the last one out, so pull for their completion..." - John Carmack

    The only link I could find quickly was to a cached Google page and it's towards the bottom, but it matches what I've read other places.

    Quake levels have to be designed to play well. If you have more than about ten complex models in view rendering slows down a lot. DOOM allows a hundred or more sprites in view without much impact. Not saying you're wrong, just that there *are* tradeoffs. :)

  • As far as I can tell, this is going to really change things if it ever gets used. It will make it easier for a hacker to destroy random processes if they can get in. I don't think anything like this will ever get mass-marketed, because people will be too paranoid to let it know their real address. These people don't like giving out their credit card number, they'll hate giving out their address. I dunno, maybe I'm just thinking too much. But no one ever lost money betting against the intelligence of the American public...
  • Load it up, and fight it out with the fractal dragon. You gotta be fast to save your machine.
  • > Not only that, but you have Fiends for Daemon models and Zombies for zombied processes!

    Just think, axe 'em to hang 'em up, shoot lightning bolts to give 'em a kill -15, and a rocket or grenade for a kill -9.



    ---
    Another non-functioning site was "uncertainty.microsoft.com." The purpose of that site was not known. -- MSNBC 10-26-1999 on MS crack
  • Actually, this has the advantage of teaching a whole new generation of computer children. Most of us grew up in either a APPLE, COMMODORE, IBM Comp. world during the eighties and early nineties. We pretty much know whats going on from the ground up. But for others they need some kind of help in understanding computers.

    The biggest complaint people have about UNIX based OSs is the commands and the layout. ITS JUST TO CONFUSING FOR THEM TO GRASP. Why should we teach this to our students if it confuses us the teachers say. Well this can be an educational tool for those wanting to understand UNIX and who learn best through visual association.

    Wow, I beleive this to be a great concept. It helps to further develop the primary unserstanding of the world of UNIX. I can see it now, kids K-5 don't know how to battle complex mathmatical equations but they know the steps to take in putting down potential proccess riot led by the dreaded and notorious rouge procces known as XWINDOWS.

    This opens up a whole newl world of fun for kids of all ages.
  • Nope. It's a general computer thing. "Processes" are what you might call "tasks" or, more likely, "programs I have running". What this guy's written is a way to stop those processes-- or, in computer terminology, "kill them"-- by shooting up creatures corresponding to them in a modified version of DOOM. Has nothing to do with XFree86 (which, by the way, is only one of many X servers out there... NOT the only one, though practically the only one that won't cost you a bajillion bucks, and gives you the source), though you can probably run it under X.

    Since you seem so uberconfused, I'd like to strongly recommend that you get a few good computer books from O'Reilly and Associates and learn a bit. :)
  • by jim (3666) on Wednesday October 20, 1999 @08:34AM (#1598922) Homepage
    We need ...
    Sysadmin NetHack!

    The Netscape summons help! --More--
    The Netscape hits! --More--
    The Netscape hits! --More--
    The Netscape hits! --More--
    You feel yourself slowing down. --More--
    You kill -9 the csh! --More--
    You feel wise. --More--
    The sendmail breathes SPAM! --More--
    You are hit by a blast of SPAM! --More--
    But it reflects from your filter ...

    Now where's that DevTeam when you need it...?

  • I just wrote the code a couple of days ago and have not had a chance to try it in other environments. I was intending to post this doom thing to slashdot next week, but you just can't stop the speed of the internet. Nadeem Riaz made a suggestion that might fix the code on some platforms. I just changed my patch to reflect this. In response to some of the comments: The doom process itself is not in the game. I thought it would be too weird for the program to kill itself. However, I did not filter out other processes, so everything is fair game. Yes, the player can die, but this is to ensure that an over-eager sysadmin does not get in over her head. Dennis
  • Nahh... more like, the little marines are running around mindlessly, going into the startx room, flipping on a switch that starts up netscape. But you always have that rogue marine that's trying to open (find the keycard to) the /root folder, other people's folders in /home, or playing around with executables that he should be playing around with in /sbin and /usr/sbin. What do we do then? We get some Combat Armor on, we find a grenade launcher and a bunch of grenades, and track him down (god bless Doom & it's automap) and pop him a few times, thus ending his noseyness.

    Maybe perhaps level entrances will signify open ports -- and the doors will be open. If you see a marine that shouldn't be standing in the doorway of, say, port 139, then well you get out that damn double-barreled shotgun (doom 2), and blast his little ass off.

    Just my [stock market crash] 1,739 cents.
  • for the record, quake1 does not require a 3d card, and it is quite playable on a low-end pentium system (i used to regularly abuse my coworkers using an amd k5-75 w/ 16 megs of ram, in win95 no less).

    i wasnt aware of the quake1 source release. if true, that certainly help modifying it for this sort of task.

    --Siva

    Keyboard not found.
  • "This is Unix. I know this."
  • by Ares (5306)
    I can see it: "I'm not playing games, boss, honest. I'm managing the loads on the servers!" (Accidentally killing init on the Power Management system while everything goes dark) In all seriousness, though, this guy has an idea that really rocks (I really could smell a patent here if he wanted to)
  • I hate to say it, but this is complete fluff. And honestly, I don't see myself using it in any real situation. "Machine load is immediately apparent"? Number of processes != system load. "monsters occasionally kill each other"? That would be a rare application. "Sysadmins could cooperate or compete"? I don't need to collaborate to kill processes. And I certainly don't want to compete.


    I don't expect to see any of the companies I've worked at installing this...but is the story complete fluff? No way.


    Experiments such as this one are important steps to creating new interfaces. This article spawned many thoughts and creative ideas in a very short time here on Slashdot.


    In other words, exercise your imagination a little like the guy that wrote this patch. You're missing out if you don't.


    numb

    ?syntax error

  • by davie (191)

    su = iddqd

    What I find interesting is all those wall panels that don't seem to serve any useful purpose. Wouldn't it be interesting if those panels could be xterms?

  • Certain processes are vital to the computer's operation and should not be killed. For example, after I took the screenshot of myself being attacked by csh, csh was shot by friendly fire from behind, possibly by tcsh or xv, and my session was abruptly terminated.


    Anybody remember those toxic little barrels that cleared the room when shot?
    Nuff said.
  • Headcrash is a funny little book that takes technology, and extends it logically a bit. At one point, our hero, Pyle, was breaking into the place where he used to work via VR metaphors & the Internet.

    Amazon listing of the book [amazon.com].

    It's a good read, anyway. Hopefully people will take some ideas from it, and add it to the Doom. I'd love to be able to manipulate a proccess with goggles & gloves ;-)
    ---
  • The best use I can think of for this would be to have all network connections show up as monsters:

    "Ah-ha! a portscan, huh? Say goodbye, caco-kiddie!"

    Maybe connections to services on other machines could be shown as doors, like httpd would be a door with a big spider web bitmap (overdone cliches? yus!).

    I need more coffee.

  • The only problem, (if I recall correctly) is that in the doom .WAD, you can't have levels underneath each other. You have 2 variables, the ceiling height and the floor height. That makes it a little difficult to create multifloor buildings. Now if ID software could be pursuaded to release quake1 code...
  • >There's some times when you just need a
    >bloody command prompt to do something.

    Ohhhh... if that's not inspiration for
    and Eterm theme I don't know what is. Where's
    that dripping gore font I used to have...

    garyr
  • How about using the descent 1 engine for stuff like this? It's got the full 6 degrees of freedom and the source is out there. I hear that some people have already done a playable OpenGL version, too.

    But seriously, isn't limiting the user/world interaction to just "runnin' around, shootin' stuff" a bit... you know, limited? Killing processes isn't *that* common, even on large, multiuser systems. Pointing and clicking at objects to perform actions on them would be pretty cool, as would be the ability to socialize with other users on the system.

  • Either that or they're joking. Much like my Beowulf cluster of abacuses.
  • I'm still getting used to this Linux thing, is this an Xfree86 thing?
  • by grappler (14976) on Wednesday October 20, 1999 @08:42AM (#1598941) Homepage
    Doesn't this look like exactly the kind of sysadmin tool that needs to be bundled with Jesux?

    --
    grappler
  • >>Folders would be rooms. Files are monsters >>that originate in the rooms. Symbolic links >>would be mapped as teleporters.

    So wait, if you have a symbolic link to a file, wouldn't you then telefrag that file (monster) if you went through it? Uh-oh, time to remove all sym links to /vmlinuz :)

  • >Now the interesting question is, what happens when they kill you?

    A way to solve this with the "what happens when you kill the Doom process" question:

    You are the Doom process. You die, the thing goes down, and takes X with it. You're left at the command prompt.
  • by zonker (1158)
    now if he can add 3d card support, you can finally have a good(?!?) reason to ask your boss for a 3d card in your pc... and a sound card with good speakers... ;)

  • How long until Hollywood brings us a movie showing a system administrator using "DoomAdmin" to manage his/her processes? Wow, talk about hacking being glamorous!
  • So you don't accidentally kill your computer, you could make Init and csh into chain gunmen, or those goat-people... that way you couldn't accidentally kill them, well, unless you had the BFG ;-)
  • setting up cron jobs:

    Simply walk through the directory structure to the executable and attach a little timer/detonator device to it. (You know, the type they use with C4 in your typical action movie.)

    new users:

    Couple ideas here. You could have one room set up as a cloning/genetic engineering lab. Or just cast a spell and watch the user appear out of nowhere, with the appropriate godly sound effects to go along with it. I'm thinking something along the lines of how you create imps in Dungeon Keeper.

    installing software:

    Simple. Your CD-ROM drive is represented in the environment as a docking bay. Just open the cargo door, and carry the package to the appropriate location.

    Sendmail configuration would, of course, take place in a room that was heavily booby trapped with land mines and had no lights on whatsoever. :)
  • That's kinda cool, but Doom's really "yesterday." Do you think that we could do the same for Q3Test? And can I use the BFG to blast Netscape away?

    Seriously, this could potentially bring a lot of fun to something that has been an annoying process.


    Brad Johnson
    Advisory Editor
  • What a fabulous idea!

    Reminds me of such things as the game Core Wars [jargon.org], and the movies
    Tron [imdb.com] and The Matrix [imdb.com] (bots can kill rogue processes too...)

    ...I'm also reminded of the scene in National Lampoon's Vacation [imdb.com] where the kids make Pacman eat the data off Chevy Chase's CoCo screen... That always annoyed me as another crummy example of computers in the movies - now it seems that life is imitating art ;>

    ANJ ..
  • I love it!

    I have been waiting for something like this forever! HEHEHE. Now, if we can just get this ported to another engine, say q2/q3test, throw in some Mesa, and we can have a really pointless interface to linux thast would be even more fun than hacking ~/.steprc files.

  • by jabber (13196) on Wednesday October 20, 1999 @08:48AM (#1598955) Homepage
    No, seriously...
    Well, maybe not the Doom model, but something like Ultima.. Think about it. To change directories, you go to a different room. The objects in it are files. The 'people' are processes.

    Killing a process is just the beginning. Imagine a man process that will have a conversation with you. Or a grep, that looks like a dog, which you send into a village to thrash around and bring back that file (scroll) that you forgot...

    I like the fact that rm -Rf * is there when I need it, but a OO, interactive, VR interface to Unix (Linux) would be a Gates killer.
  • :Certain processes are vital to the computer's operation and should not be killed. For example, :after I took the screenshot of myself being :attacked by csh, csh was shot by friendly fire from :behind, possibly by tcsh or xv, and my session was abruptly terminated.

    The best laugh I've had all day 8-). Pass the BFG...
  • What was your username again? *Click-click* *BOOM!*
  • Which would you choose???
  • by ed_the_unready (5193) on Wednesday October 20, 1999 @07:09AM (#1598959)
    Just imagine the horrific carnage of killing a parallel computation process on a Beowulf cluster!

    ---------------------
  • by sterwill (972)
    Big, scary, regenerating... doesn't matter. All you'd have to do is throw some Java at it.

    --
  • Since some moderators don't seem to know - Romero's head on a stick screams at the end of Doom. (in doom2, idclev30 idclip, walk forward through the wall and then through the demon's face to see it)
  • You're right. IIRC, a local TV station showed off that interface when they got a new SGI.
  • From Network Week 3 March 1998

    The helldesk has got a bit too big for its boots, but the BOFH has a cunning plan to knock them down to size...

    I'm sitting at my desk when the PFY looks up from his task of helping users with performance problems on the back-up server.

    "Hey, the Kill-9 command isn't working."

    "Yeah, I rewrote it with better signals. Ones with more meaning than words like hang up."

    "Well what are they?"

    "They're a mixed bag - everything a discerning system administrator needs."

    "And they are?"

    "Let's see, there's Kill-Godfather, which is a quick shot to the back of the process's header in a quiet corner of process space, and also, while it's at it, leaves a GIF of a horse's head in their screen-saver bitmap."

    "Lovely, I'm sure."

    "Then there's Kill-CIA, which kills the process and makes it look like natural causes."

    "Uh-huh."

    "Of course, further investigation of the core file reveals the words, 'grassy knoll,' which is sure to get the furry-toothed guys in research reaching for the dandelion tea."

    "Yes..."

    "Ahhhhh, Kill-shotgun, for when you can't remember the whole of the process's PID - it just kills anything in that vicinity. Kill-driveby, which knocks off one process on either side of the specified one, and so on."

    "It's a little overboard isn't it?" the PFY asks mildly.

    "No, Kill-overboard kills all processes, e-mails a nasty message to Bill Gates about how badly we're abusing our Microsoft licenses, then writes garbage all over the kernel causing the system to crash. Oh, and tampers with a couple of things on your desktop machine."

    "Hey, the system's just gone down."

    "Yeah -overboard is the default if your username is helpdesk. Installed SUID too, so they have the power they've been bleating about needing all this time."

    The phone rings and something tells me it's the helpdesk wanting to complain. There's no pleasing some people.

  • Nah, they now have client-side bots for Quake now. Each process can be monitored by a central control program and the bots be apropriately dispatched (possibliy in an ugly select() call, but still feasable). Maybe perl could do it.



    ---
    Another non-functioning site was "uncertainty.microsoft.com." The purpose of that site was not known. -- MSNBC 10-26-1999 on MS crack
  • An eight year old could become the next system administrator of a company!

    Yeah. Just like NT. ;-)
  • Great ideas here and all over this forum. But I don't think they are expansive enough, or simple enough.

    The way to make this truly useful, and a new way to compute a la Neuromancer, is to not clamp down on the metaphor. Don't make rooms be processes or machines or any other fixed metaphor, and don't make "weapons" be tools from some vast and complicated "stateful" array.

    Make each room you are in able to have it's own metaphor, and have the objects in the room be manipulable via some simple message passing tools in your hand.

    So, starting with the kill processes room as described, make the doorways be "portals" to other rooms (but don't limit it...) which may contain other metaphors. So, I can enter the spreadsheets room where I can calculate, or I can enter the Beowulf maze where I can get performance stats, or I can enter the weather forecasting room which is just the metaphor for the processes that're running on the Beowulf cluster.

    I.E., the "dungeon" is just your desktop as you know and love it, with a 3d-visual cartoon rendering whenever you roll your mouse somewhere and launch something. And make it be that easy: screw complicated maneuvering in favor of point-and-click only. Give the visual appearance of doing cool stuff, but make the user only point and click.

    P.S. by the way, I proposed a similar scheme a while ago to some VRML vermin who were looking in a discussion group for "how to make VRML" more appealing to business users. The whole problem I saw with VRML was that it was visually cool, but too hard to use. Gamers may be familiar with lots of controls, but some of us aren't interested in that and they just create barriers to entry. Give me a point and click VRML UI with cool visuals, or an Id engine, and I can get people to click on your ads, guaranteed: Oooh! that tickles, stop it, you rascal!

  • set DOOMWADDIR=/usr/local/games/xdoom in your environment. Copy your old doom wad to that directory.

  • should not be there. If it is, that would be the first /. poll that covered all possible choices: just not allowed:)
  • time for all of you old doom mappers out there to ressurect that map of where you work, so you can easily know which machine you're about to shutdown with that BFG you're holding...

  • Can it be added to to remove users as well?
  • Accually
    it exist [sgi.com]

    But it only runs on IRIX.
  • by jht (5006) on Wednesday October 20, 1999 @07:12AM (#1599073) Homepage Journal
    Imagine the possibilities if it was used under NT or something where processes die an a regular basis... (naah - you'd need a body bag for all the dead admins)

    On a more serious note, the idea of using a 3-D interface of some sort has been around for a long time. Using Doom (or any 1PS engine) as a front end is a fairly novel and potentially useful way to take advantage of 3-D for a limited set of tasks. I'm not sure how you'd -HUP a process (visually, that is), and there's other places the idea needs refining, but the idea is quite interesting.

    I think you'd use Q3 to kill processes on someone else's machine, not your own, wouldn't you? After all, that's what "team play" is about, right?

    - -Josh Turiel
  • A group of networked computers, a few users logged into each computer. The computers are personified as forts or bases or something on a map.

    The goal? Kill others' processes while defending your own. Lots of room for strategy by starting huge ones that whomp on intruding sysadmins, or surgically zapping shells to get rid of users. Each team can have a set number of weapons, which some mastermind distributes among his teammates.

    Who wins? the last team with a working computer.

  • Finally, computer software starts to catch
    up ridiculous Hollywood portrayals of computer
    software. Now if I could just run a program
    to let me break the world's toughest encryption
    in 30 key strokes or less.
  • be taken a step further to make a totally 3D interface for systems. Now is probably the best time in computing history to attempt such a project. Processors are pushing the gigahertz range and 3D accelerators are spitting out 1600x1200x32 resolutions at 30fps and up. A 3D interface would be a hundred times more intuitive than the desktop environment a majority of users have in front of them. It would be the REAL revolution in computing that's been promised for years by different people. This concept has a good deal of potential.
  • by Rob the Roadie (2950) on Wednesday October 20, 1999 @07:14AM (#1599104) Homepage
    Image how a shutdown sequence would look with this environment...All the monsters in the room would start to kill themselves in a quiet orderley fashion until a screen comes up says
    "Level Complete. Kills 32/32 Secret 1/10". Press Enter To Continue"
    Hang on...NT already does that whole enter to continue thingy...I've changed my mind, that would actually be really anoying!
  • With a new breed of flashy interfaces on sysadmin/hacking tools, this makes the perfect answer to the earlier discussion about movies. Somebody doing some kind of hacking job could have it shown visually in the movie by having the person move in 3D through a room.

    And it wouldn't give up anything in the way of realism.

    --
    grappler
  • by SteveX (5640)
    If you added a channel where processes could attach themselves to the Doom creature that represents them (kinda like the agents switching bodies in The Matrix), you could link an UnrealTournament style bot into Netscape and have it try to stay alive...

    Of course Netscape's bot would walk just kinda lumber around, but I'd be worried about taking on, say, Apache...
  • by Enoch Root (57473) on Wednesday October 20, 1999 @07:15AM (#1599116)
    I mean, admit it. Overdone visuals are fun, and they're the stuff of Hollywood movies.

    Personally, I'd like to see more applications like that. Not a mandatory feature of an OS, but cool toys you can use to impress people. Stuff like:

    Daemon processes: Visit the Infernal Realms (again, a la Doom) and meet your Daemons in person!

    Login: Finally! We can have a giant 'ACCESS DENIED' when we're denied login! Alternately, you could see a locked door as in Doom.

    Network architecture: Imagine being able to navigate your network as in all those Gibsonian worlds... In a Doom environment, no less. A room is a particular server, and doors are gateways. You get that moving skyline when you're about to go on the Internet.

    Antivirus software: pump that shotgun with the latest shells, and go hunt for some bugs, as you navigate your file system and kill infected files!

    Well, alright, that's humorous. But I still think there's plenty of potential with 'over-visualising' processes and commands. It's fun, and it helps the layman understand what's going on.

    However:

    Making it "mandatory" is just plain wrong. Microsoft is the champion in the over-visualisation. There's some times when you just need a bloody command prompt to do something. It's silly to always have graphics everywhere, and it bugs down your performance.

    So... Cool toys, yes. Features? Please, no!

    "There is no surer way to ruin a good discussion than to contaminate it with the facts."

  • No, that's the kind of research you would be doing, Spiny. :) I think it's called 'zoom,' of all the uncreative things out there. I dunno, and I'm too tired to look it up [unm.edu] on the UNM CS website (too tired to even see if that's the right URL for the department). This is an interface project that's been going on for, like, 10 years now (I know they had a lot of work put in when I was in middle school). When I saw it running on an SGI Indigo back then, it was the coolest thing ever, aside from 'ant: the movie' running in the background. :)
    ---
    "'Is not a quine' is not a quine" is a quine.
  • by Kitsune Sushi (87987) on Wednesday October 20, 1999 @07:15AM (#1599125)

    ..that nothing innovative comes out of the free software community? At least I've never heard of anything quite like this before..

    However..

    Really crowded systems would regulate their own load because monsters occasionally kill each other. Once the population in a room goes down, the monsters will stop attacking each other.

    I'm not sure I exactly like the idea of my processes beating each other up. I already had the problem of processes dying for no apparent reason under Windows. Why would I want to relive one of its worst "features"?

  • I had this idea of feeding all of my manpages into a local megahal to make a virtual UNIX guru... [uwa.edu.au]

    Unfortunately, it ate up my 96M of ram before I could even interact. Perhaps this would work on one of those insane machines with gigs of ram and altogether too much processing power.
  • by billr (71335)
    Well, hey thats what dehacked is for. You can fix those problems. For example, make the csh's into chain-gunner, and make the chain-gunners invulerable to all damage except from, say... the chainsaw!!! Woo hoo!! Cut that shell to pieces baby!!

    I hope a quake version comes out soon, that understands distributed objects.
  • by Anonymous Coward
    I modified the Doom process-killing thingy to print the first 14 characters of the process' name to make em easier to spot: http://raq.linux-florida.com/users/chris/xdoomsrc- cshepher.tar.gz -Chris Shepherd
  • Now the interesting question is, what happens when they kill you? Or did he make you invulnerable at the same time? I don't know about any of you, but I wouldn't like to be killed *in an operating system*, even one that looked like Doom.

    -----------------------

  • by schweda (58011) on Wednesday October 20, 1999 @07:18AM (#1599135)
    Look, I'll explain what the point of this.

    The first time I read this, I thought this was the funniest thing I'd heard in weeks.

    But you gotta wonder -- in all seriousness -- if this isn't actually a pretty importent moment.

    The idea of this -- us verus them, the users versus the processes they (could/should/ought to) control -- is metaphorically quite interesting.

    I mean, the notion of allowing processes to fight back -- or wounding but not killing a process -- is pretty fascinating -- especially when everything is played out on a virtual battlefield.

    It's quite frightening when you stop and think about it. Yeah, it's funny: but imagine somehow if artificial intelligence (on the part of the machines) is slipped in here and this whole thing is played out on a much larger scale -- on a much larger, much different sort of virtual battlefield.

    It's funny, but the implications of this are pretty overwhelming.

    Very cool.

  • The page was really an exploration of an idea, not an advertisement for the program, which was a simple proof-of-concept. I wanted to see if the basic things could be done easily. And they can be! I also wanted to inspire people to implement cyberspace.

    Advice for people who want to see this work on their machines:

    • Make sure that the unpatched Doom source will compile on your machine, then add the patch. I hope that the port is portable with only minor adjustments necessary.
    • I didn't change the Makefile, just the GNUmakefile. So if you are using the Makefile, add the object file "pr_process.o" to the dependencies.
    • Look at lines near the markers "--pid--". These are the lines of code that I added. I hacked them into the code in a day. And it shows. You can do better!
    I am surrounded by Debian Linux boxes, so I really can't help those who can't get stuff to compile. Dennis
  • I think you meant MCP (Master Control Program). But, yeah, cool. Hrmm, all we need now is a Tron level for doom....
  • Ok, so this seems like a viable option. Some modification is needed, but it is a work in progress.

    Wasn't there a question in the Ask Carmack post about appllying quake code to cyberspace uses?

    My question is, how does this translate into the security arena? Can the program be modified to detect/track users as well as processes?

    Myabe each room defines a user's space. The user is a boss monster of some sort (depends on their user privledges), and all of their processes are soldiers in the room with them. The more privledges, the more access cards you have, and the bigger your avatar.

    So, you would be able to track whatever users are on your system, and know if they should be there or not. Pretty much instantly you would know if an intruder is in your system. Becuase suddenly there's another root avatar running around. Much easier than looking through logs and other traces. And you can literally blow the guy away.

    And maybe you could use the system to visually playback the actions taken by a user over the course of their login?


    "You want to kiss the sky? Better learn how to kneel." - U2
    "It was like trying to herd cats..." - Robert A. Heinlein
  • Along similar lines :

    In the text adventure embedded inside Emacs (M-x dunnet) you can find a circuit board for a VAX lying around. If you find the cabinet, you can insert the board and the machine boots up and gives you a login prompt. You can log into the VAX and look at the filesystem. Any objects you had with you appear as 'objects' in the file system
    (e.g. shovel.o). There is also paper.o.Z.

    "Wait a minute" you think,"I didn't have a piece of paper", so you uncompress the file and then
    log out and, lo and behold, there is a slip of paper with a clue written on it.

    Things get even weirder later when you telnet from the VAX somewhere else and your body in the adventure is transported to another room with no way back...
  • but this would certainly add some drama to an exploit once you are in.
    --------------------------------------------- -------------
  • by Pollux (102520) <speterNO@SPAMtedata.net.eg> on Wednesday October 20, 1999 @07:23AM (#1599165) Journal
    So let me get this straight...

    If this would be fully developed, we would be able to control system administration through playing a souped up game of DOOM! Do you know what this means?

    An eight year old could become the next system administrator of a company!

    CEO: "Johnny, my computer locked up again, what do I do?"

    Administrator: "Hold on a sec...gotta whip out my BFG for this one...DIE YOU ALIEN SCUM!!!"
  • Is it just me or would it be a Bad Thing (tm) to let anyone wander around with a BFG in "process killing mode"? One itchy trigger finger and 75 processes bite the dust.

    "Sorry I kill'd ya', Fidget." - Time Bandits
  • At http://ultracool.net/xdoom-proc-pnames.gz [ultracool.net] you'll find a patch that displays process names + pids instead of just the pids. Makes it a lot more fun :). It's a quick hack, but, hey - so was the original patch. Apply it after you applied the original patch, same method.
  • by Wah (30840) on Wednesday October 20, 1999 @07:34AM (#1599190) Homepage Journal
    make the doom mod a remote shutdown and restart utility. Map the machines onto your homegrown map and wander the halls. Once you enter a "machine" that room loads and the processes come howling.

    "It's time to Administrate!!" *pumps shotgun*
  • to "zombie process".

    this patch could conceivably be very dangerous. what if someone compromises root and gets a hold of a BFG ? or if someone took a chainsaw to your shell session. i'm getting queasy already.

    they should send kill messages to owners of the killed processes. i could see it now ... my quota's full so autosave stopped working, and someone kills xemacs after an all night coding session. "XEmacs was fragged by [31337 Cl4nn3r]"
  • by Matt2000 (29624) on Wednesday October 20, 1999 @07:36AM (#1599195) Homepage
    The real question here is what are they "researching" down there at the University if New Mexico?


    Hotnutz.com [hotnutz.com]
  • Okay, you asked for it, here it goes :) - last night I quickly hacked together a patch for the process.patched xdoom so that if you are root, it displays users instead of processes. If you wound a user, all her/his processes get reniced. If you kill a user, boom go her/his processes - *evil grin*.

    Get the patch at http://ultracool.net/xdoom-userfun.patc h.gz [ultracool.net]. Apply it after you patched xdoom with xdoom-process.patch, in the same way. This includes my pnames patch btw, so don't apply it over that one if you have that (this also means that user/process-names are displayed in addition to the uid/pids).

  • A neat idea would be to build a file manager out of the doom source; each room would be a directory (tastefully decorated according to its use), with corridors connecting them as per the directory tree. All the files would be things lying around and you could implement other equipment besides guns to operate on them. Processes would show up as monsters in their working directory. Their using files would of course also be represented by them using the file objects.

    No more 'mv' -- just pick that file up, walk to another room and drop it there! You want to read a text file? Just invoke the 'ls' monster (possibly by walking down to /usr/bin and waking it up), give the file to it, and the contents will scroll across its belly (think teletubbies here).

  • by Sick Boy (5293) on Wednesday October 20, 1999 @07:39AM (#1599207) Homepage
    What I'd really like to see is not process management, but USER management. When some sniviler gets out of line, it's time to go sniping!
    Brings a whole new meaning to:
    "What's your user name again? *Clickity-click*"

    --
  • by hatless (8275) on Wednesday October 20, 1999 @07:39AM (#1599208)
    One interesting idea this leads to is the adoption of Doom as the basis for a 3-D visulaization interface for network and system management.

    Imagine extending things like Ganymede [utexas.edu], Scotty [utwente.nl] and relational asset databases to auto-generate .WAD files represtenting network maps, zonefiles, LDAP directories, SNMP agents and so forth, and using a modified Doom interface to select and perform actions on objects.

    I never got into .WAD design back in the day, but surely there are tools out there for turning architectural floorplans into .WADs, too.

    The big issues would be (1) the one-map-at-a-time design of Doom, which would make it hard to toggle between physical and logical views of networks, and (2) the fixed-target UI of Doom, which is good for the game, less good for this. Marathon, with its mouse-positioned gunsight, may not have been as good a game, but it would have made a bettern WAN visualization tool out of the box.

  • by Otto (17870) on Wednesday October 20, 1999 @07:44AM (#1599211) Homepage Journal
    Okay, now here's what we have to do...

    Come up with a map structure to allow visualization of your network by the room layout (this would rock)..

    Make the maps be dynamic, so that when other machines come on the network, other rooms can be added for those machines (this is probably the most important thing to do)..

    Make important processes unkillable.. make processes that probably shouldn't be killed fight back harder..

    Processes that die naturally should wink out of existance rather than dying.. Don't want to end up with bodies lying all over the place for no good reason.. :-)

    Is there a way to kill a process remotely short of using ssh or something similar? No big deal if not. You could use something to the effect of when you open the door (that has the machine name written on it), it ssh's to that machine in order to give you process control or gives you "ACCESS DENIED" and shoots at you a few times if you don't have access...

    Also, machines running windows would be represented by empty rooms with the Bill Gates Head in the middle (sort of like Romero's Head in Doom2).. Kill the head and the windows machine crashes.. :-)

    For Windows NT there is remote process control, but I don't know if there's an implementation on Linux.. Must check into it. Then you could, at least partially, kill NT processes remotely..


    ---
  • But imagine it's your responsibility to keep a system up while lots of users log in from remote locations and start their own processes. More important people get bigger monsters to represent their processes. Lusers get grunts. Gives new meaning to "Bastard Operator From Hell." I guess he'd be one of those goat-legged green-fireball-throwing creatures.
  • But you gotta wonder -- in all seriousness -- if this isn't actually a pretty importent moment.

    It might be, but not in the semi-paranoid manner you meant (e.g. runaway processes fighting back).

    One of those predicitions for the future from a couple weeks ago included a revolutionary 3D user interface on Linux. This could potentially be the start of it. I'm not entirely sure that's what the creator of this little hack intended - he could have just intended to make something cool and not been thinking about the implications for the future.

    Admittedly, Doom is a technologically dated engine, but this is where it'll start. Who knows, in 5-10 years, we might all be reminiscing about "that antique 2.5D 'kill -9' interface", all the while working in more realistic and fully realized 3D interfaces.

  • by john_heidemann (104993) on Wednesday October 20, 1999 @07:59AM (#1599220) Homepage
    If you like doom processes, you might want to check out lavaps [isi.edu]. It provides a somewhat more peaceful way to visualize processes, including how much memory and CPU they consume. (Just recently posted to freshmeat.)
  • Everything but the lowlevel sound/music code and the game artwork. There are available substitutes for both, but clearly this program requires you to have purchased DOOM.WAD or DOOM2.WAD previously.

    IIRC, Quake 1 is supposed to be released this Christmas or so. However, you *still* might want to use DOOM, just because not everyone has supported 3D acceleration yet, and frame rates are an issue. DOOM is also far more compact, and requires much less memory and time to develop levels.
  • I used to dismiss the idea of a navigable/immersive cyberspace as a workable metaphor as naive, but I'm beginning to think that Gibson et al were really on to something.

    I can imagine encapsulating a wide number of functions into this sort of interface; if, ultimately, every aspect of a system, and the data that they host, is made accessible or inaccessible using these sort of metaphors, the Gibsonian vision of cyberspace might be viable.

    (One of my favorite Gibson quotes is this reality check: "Cyberspace is where they keep your money.")

    It was only a couple weeks after I dismissed the idea of 'virtual spaces' as hokum among my friends that I really started getting into multiplayer Quake - and even looking for friends on servers.

    We'll all have a little egg on our face if the "Hollywood O.S." turns out to have a grain of prophetic truth to it, no?
  • Quite a few years ago I worked with an ISP that maintained most of it's admin information(non-server stuff) through BBS software.. we would each log into a terminal and spend the next half hour or so killing each others admin accts, changing passwds, creating new accounts to battle the others with, and so on..

    I see this as a potential extension of that good ol' game.. could play something like a varient of Capture the General, where each player tries his damndest to protect his csh monster, while trying to kill the shell of every other player..or perhaps defending your network, attempting to take out the machines of the opposing network.. imagine that, your csh dies and POOF, you're gone..slide your chair over and jump onto the other machine before he hits that as well...


    ________________________________________________ _____________
  • You know, this very thing was an idea from BOFH after it was picked up as a column in Network Week. Sadly, Network Week has folded, but you can still get the articles off Google [google.com] if you try. I was lucky enough to grab archives from 1995-1998 before it shut down.

  • by double_h (21284) on Wednesday October 20, 1999 @07:54AM (#1599243) Homepage

    Of course Netscape's bot would walk just kinda lumber around, but I'd be worried about taking on, say, Apache...

    This raises all sorts of possibilities like having Netscape be represented by a big, regenerating boss creature (to simulate memory leaks). Hit points should be directly related to the memory use of a process, and CPU load could control offensive capability or something. Those big skull-spitting Pain Elementals could simulate multithreaded processes. There should be cloning monsters to handle forks and execs.

    Of course, extending the metaphor beyond DOOM offers other possibilities, like a Fantasy RPG where root-owned processes can only be killed with magic weapons. Killing zombies would require some special method as well (hmm, now I'm imagining a fusion between 'top' and 'House of the Dead'...)


  • If there were a way to update the WAD file (in memory?) to reflect changing topology and geography automatically, you'd be on to something... that would solve the one-map-at-a-time issue.

    Now if one could "lock" the current room in memory and not allow any architectural changes there, that would solve another issue. Interesting.

    --
    QDMerge [rmci.net] 0.4 just released!
  • by Stonehand (71085) on Wednesday October 20, 1999 @08:06AM (#1599246) Homepage
    Interesting possibilities:

    * Interface improvements: perhaps add a '?' command that identifies what you're aiming at.

    * Changing it so you represent your current shell, or perhaps the Doom process itself... (or, alternately, Deathmatch -- and you've got to protect your own processes as well. :)

    * Think _Doom II_. What happens with Arch-viles, and the cubes that spawn monsters?

    * Perhaps different rooms could represent different priorities, or alternately UIDs. With the latter, keys can be used to limit power (lock the doors).

    * Cyberdaemons with 10x rate-of-fire (and invisible rockets!) and hit points might be able to seek-and-destroy unauthorized processes on their own. ;-)
  • I hate to say it, but this is complete fluff. And honestly, I don't see myself using it in any real situation.

    Of course you don't see yourself using it in any real situation. It's just a "for fun" thing to do. Lighten up, okay?

    Some responses make you think this is expected to replace top.

    -Brent
    --
  • Network architecture: Imagine being able to navigate your network as in all those Gibsonian worlds... In a Doom environment, no less. A room is a particular server, and doors are gateways. You get that moving skyline when you're about to go on the Internet.

    "It's a UNIX system! I know this!!!"
  • I'm not sure if wounding processes or letting them kill each other is such a good idea, but this model does appear to have some interesting and potentially useful applications-- especially for large distributed systems (Beowulf clusters, etc.) or systems that are very dynamic (by dynamic, I essentially mean networks that have boxes entering and leaving the network regularly). For instance, let's say we have the latter situation and we've used our DoomUI (DUI? *grin*)to construct some sort of level (probably some sort of large central room with a bunch of corridors branching off of it) with a series of doors, one for each host. Then, when a host is online and open, the door that corresponds to the host will open for users allowing them to enter, use the resources (Consider the amusing image of marching distributed Beowulf processes into a compute node at gunpoint (or cattleprod or whatever)!) and then leave. (Continuing on the Beowulf vein, a queuing system could manifest itself as an entity in the main room and direct processes to the appropriate compute node, or if you had a Globus type of thing going on you could ship processes between nodes by marching them over-- this would, of course, require some good agent-style technology). Also, on multi-admin systems you could easily tell if another administrator was using a particular node if, say, you needed to reboot it or even the current user population for that matter.

    At any rate, at least its entertaining :-)
  • Will this be a Bonobo component?
  • Actually, the UNM CS department does a lot of stuff on natural graphics-based object-oriented interfaces. One of their more well-known projects (I can't remember the name of it, though) involves the system being a large sheet of 'paper' which you can zoom in and out of, and applications are 'windows' which can float over data to format them and the like, and there can also be portals/links between parts of the world. Rather interesting; everything's location-oriented and tactile, rather than conceptual in some big tree of things like how current systems usually are.
    ---
    "'Is not a quine' is not a quine" is a quine.
  • make the doom mod a remote shutdown and restart utility. Map the machines onto your homegrown map and wander the halls. Once you enter a "machine" that room loads and the processes come howling.

    "It's time to Administrate!!" *pumps shotgun*

    And don't forget the sequel -- Administrator 2: Judgement Daemon

    :)

  • http://www.iinet.net.au/~bofh/

    I think it has most of them. Do it, do it now!
  • Bash started to attack me! I was forced to kill it!

    I guess that's what happens when you use that OpenSource stuff, huh?

    Linux Myth: Bash, even though it sounds painful, is actually very safe.

    Truth: Bash processes attack you when you don't expect it.

    This message is copyright 1999 by Microsoft Corp. and paid for by Microsoft Corp. However, the research was conducted independantly by the Gartner Group.
  • by itp (6424) on Wednesday October 20, 1999 @08:23AM (#1599279)
    I've downloaded all the files you need and put them up at

    ftp://foof.org/pub

    --
    Ian Peters
  • by SpinyNorman (33776) on Wednesday October 20, 1999 @09:47AM (#1599286)
    One of their more well-known projects [...] involves the system being a large sheet of 'paper' which you can zoom in and out of, and applications are 'windows' which can float over data...

    All of which begs the original question - what exactly are they "researching" down there?!

    The name of the system doesn't happen to be "Peyote", does it? ;-)

"If anything can go wrong, it will." -- Edsel Murphy

Working...