Path: utzoo!attcan!uunet!samsung!think!barmar From: barmar@think.com (Barry Margolin) Newsgroups: comp.os.misc Subject: Re: Macintosh OS (was: 68000 and Workstations.) Message-ID: <36860@think.Think.COM> Date: 29 May 90 01:10:41 GMT References: <30273@ut-emx.UUCP> <76700207@p.cs.uiuc.edu> <1990May24.114553.10301@phri.nyu.edu> <37@voa3.UUCP> <402@newave.UUCP> <26200.265dd7be@vaxb.acs.unt.edu> <6392@scolex.sco.COM> Sender: news@Think.COM Reply-To: barmar@nugodot.think.com (Barry Margolin) Organization: Thinking Machines Corporation, Cambridge MA, USA Lines: 49 In article <6392@scolex.sco.COM> seanf@sco.COM (Sean Fagan) writes: >In article <26200.265dd7be@vaxb.acs.unt.edu> ac08@vaxb.acs.unt.edu writes: >>But according to your definitions, there is no such thing as an "operating >>system" on any computer ever made... after all, they're just a bunch of >>programs that talk to each other, right? >Also, please read the article again. He said "procedures," not programs. >Yes, Virginia, there *is* a difference. What's the big difference between a program and a procedure? Programs are just procedures that happen to be called in response to certain types of user input. >Most people consider that a *true* OS has protection of some sort; There sure is alot of misconception about what an OS is. An OS is a set of procedures that make it easier for application programs to use the hardware. This frequently includes a file system, memory management, and device drivers. Multitasking is also a common feature. In multiuser systems it's usually important to make sure that the multitasking and file system implement the desired policies; in this case the OS must be protected in order to protect the users from each other. On single-user systems it's useful to protect applications and the OS from each other for reliability, but it's not as critical as it is on multiuser systems, and there are often benefits from allowing applications to manipulate the OS and each other directly. > that is, >some way of making sure that programs don't step on each other and can live >in peace and harmony. (Sometimes, this is done just to make sure that the >program doesn't step on the OS, true, but it's still nice to be there 8-).) There's a fine line between "step on" and "work with". It's like dancing: would you outlaw close dancing just because sometimes toes get stepped on? >Ask yourself this: using your "OS," following all of the rules, is it >possible to write a program that will lock up the machine? Most "true" OSes (to use your term) provide ways to set the priority of each process, and there is usually a high priority setting that specifies that the process should be allowed to run whenever it needs to. So, all you have to do is write a program that gives itself this priority and then goes into an infinite loop. On multiuser systems you might need privilege to run such a program, but on single-user systems there generally is no such thing as privilege. -- Barry Margolin, Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar