webber@klinzhai.UUCP (04/19/87)
In article <12881@watnot.UUCP>, ccplumb@watnot.UUCP writes: > > shebs@cs.utah.edu.UUCP (Stanley Shebs) says (in <4480@utah-cs.UUCP>): > >In article <12788@watnot.UUCP> ccplumb@watnot.UUCP (Colin Plumb) writes: > > > >>Is 100 pages large enough? I wrote 54 pages of assembler in > >>2 months' spare time. This was for a VAX, running Unix, neither > >>of which I had used more than a month and a half when I started. > >>(I really ought to finish the thing... it works, but there are > >>some bits which are ungodly ugly. That should bring it up to > >>*at least* a hundred pages.) Speaking as a first-year CS student, > >>I could conceive of writing a Unix kernel. > >>... I don't think you want to speak too much about writing Unix kernals single-handedly without first establishing some operating system specific background. A good case can be made that no person or group of persons has successfully written an operating system of the size of unix yet (e.g., unix has existed for at least 10 years and people are still reporting bugs (other operating systems benefit from being badly documented enough that people can't recognize the bugs :-) ). > > All the instructor can or should do in those cases is > >to demand that amazing feats of programming be understandable to > >normal people, give the students free access to extra computing > >power, and let 'em rip. This is just a variant on the classic advice that when you have a student that doesn't need a teacher in order to learn, then the best thing to do with them is just turn them loose in a library (perhaps with a reading list). > > Hey, I like that! So far, my quest for more computing resources has only > earned me the ire of a hunk of the local systems people. There is still > the problem (that a job might fix) that hacking is to be done in intense > bursts, and classes gum those up rather badly. They stubbornly refuse to > be resheduled for 4:00 am two days hence. There are two classic approaches to getting extra computing resources. One is to get `hired' by the local system staff. This gets done by demonstrating a knowledge and interest in what they do and a willingness to work with them. The other way is to offer to aid one of your faculty in their research (while they may or may not have money, they don't suffer from the problem of not being able to use people that they can't pay for). Again, this gets done by demonstrating a knowledge and interest in what they do and a willingness to work with them. Of course, in figuring out which way to go, you should determine whether you want to establish vocational credentials or academic credentials. Enjoy. ------------------ BOB (webber@aramis.rutgers.edu ; BACKBONE!topaz!webber)
ccplumb@watmath.UUCP (04/20/87)
webber@klinzhai.RUTGERS.EDU (Webber) says (in <176@brandx.klinzhai.RUTGERS.EDU>): >In article <12881@watnot.UUCP>, I (ccplumb@watmath.UUCP) wrote: >>Speaking as a first-year CS student, I could conceive of writing a >>Unix kernel. It might take me years, but I don't think the people >>who write them are a higher order of being or anything. >I don't think you want to speak too much about writing Unix kernals >single-handedly without first establishing some operating system >specific background. A good case can be made that no person or >group of persons has successfully written an operating system of >the size of unix yet (e.g., unix has existed for at least 10 years >and people are still reporting bugs (other operating systems benefit >from being badly documented enough that people can't recognize the >bugs :-) ). I must admit that I am a bit weak in OS background. I read about the Unix kernel, but I haven't had a chance to study the code yet. Still, I could certainly get a time-sharing OS of some description running. If you define `success' as a complete absence of bugs, then I don't think I could write such a thing without a major advance in correctness proving. I might add, however, that fewer authors leads to a more coherent philosophy (one of the reasons for the early success of Unix), which can reduce the number of subtle interaction bugs. I might point out RMS to people who doubt that a Unix kernel *can* be written single-handed. No, he hasn't produced a kernel yet, but I haven't any doubt that he'll do it. I'm not nywhere near his level, but I'm not without aspirations. >There are two classic approaches to getting extra computing resources. >One is to get `hired' by the local system staff. This gets done by >demonstrating a knowledge and interest in what they do and a >willingness to work with them. The other way is to offer to aid one >of your faculty in their research (while they may or may not have >money, they don't suffer from the problem of not being able to use >people that they can't pay for). Again, this gets done by >demonstrating a knowledge and interest in what they do and a >willingness to work with them. Of course, in figuring out which way >to go, you should determine whether you want to establish vocational >credentials or academic credentials. Well, first of all, my nefarious schemes to get more resources more directly have had various effects on the systems staff, from amusement through concern to serious annoyance. Also, around here, they've made an agreement to only hire co-op students for summer jobs. I'm not one of them. Still, I'm getting as far into the system as I can. I'm currently unilaterally insatlling (with bug fixes and improvements) software from the net, learning about the innards of X, and learning VLSI design so I can try to actually design a CPU I've been dreaming about for a year or so. >Enjoy. Oh, I'm doing so. >------------------ BOB (webber@aramis.rutgers.edu ; BACKBONE!topaz!webber) -- -Colin Plumb (watmath!ccplumb) Silly quote: Anybody who marries her would stand out like a sore thumb.