Re: next the good jobs will go
- From: Glenn <minorgo@xxxxxxxxxxxxxxxx>
- Date: Tue, 05 Aug 2008 20:57:06 -0500
On Tue, 05 Aug 2008 17:30:02 -0700, Islander wrote:
Glenn wrote:
On Tue, 05 Aug 2008 13:36:26 -0700, Islander wrote:UNIX is a fascinating story. Back in the late '60s and early '70s
Well, UNIX was not developed using the waterfall model and is probably
the best OS out there today (at least the derivatives of UNIX are).
One would think that a technology as old as OS could be completely
specified, but that has proved to be only in the imagination of the
software engineering past. Would you believe that there are still
research programs in operating systems?
I thought Unix was designed for telephone switching networks and its
popularity in other areas was because it was free, or at least the cost
of a tape. Neither DEC nor IBM ever considered it sufficient for a
application or development shop because it consists of whatever any
programmer thought would be a good idea, and it had too many
restrictions because of its heritage.
OS isn't all that old, as before OS were monitors and supervisors.
Rochester's first powerful OS was released with S/38 and was a subset
of the replacement proposed for 370. The large systems never replaced
their OS, but just enhanced it. Our OS migrated from S/38 to AS/400
and on to the current systems, whatever they are called. I assure you,
trial and error isn't part of its design and implementation. The
primary reason for a new operating system was the need to support a
single level view of large (64 bits at first) storage or memory space.
It was also the first to use two levels of microcode as well as other
innovations that I can't remember. If you really want to understand
commercial computers, not lab test stands, you should check out a few
books on IBM S/38.
The issue of software systems like the Mar's lander is different. You
are right in implying that we cannot keep shooting up missions until
we get the software right. The approach used here is the application
of simulators to test coupled with the ability to upload updates when
bugs are discovered. The simulators are developed in a separate
organization from the one developing the system code to give an
independent perspective. It is kind of like the old joke about when a
munitions manufacturer happened to meet an armor manufacturer at the
Defense Procurement Office. "Just when I build a better projectile,
somehow they come up with a more severe test..."
This has always been in place since the beginning but where are the
programmers coming from if structure programming isn't taught. NASA is
pinched for money without the need to retraining personnel. Simulators
have never replaced skilled technologist because they are only as good
as their designers. With programmers using faith based techniques,
Mars is out of reach. We knew this a number of years back, but like
the universities, the weapons manufactures, everyone became a optimist
to keep the money coming.
The inability to specify large complex software systems is one of the
reasons that the Strategic Defense Initiative was and is a bad idea. A
friend of mine presided over a panel of computer scientists who were
tasked with determining the technical feasibility of this part of the
SDI program. He made an interesting observation. Software developers
tend to treat software as if it were an exercise in the design of a
finely engineered watch. Every part is designed to perform a specific
function and is optimized to do that function and no other. He
concluded that software systems should be designed like communication
systems. These are designed in the anticipation that any part may and
probably will fail in unanticipated ways.
I never heard this as it is the system's architects job to optimize the
system function, not to let one function dominate. The problem with
SDI was simply too many line of complex code. It's probability, and as
humans become dumber, the probabilities become larger. We're out of
business and the fault lies with inexperience, with no curiosity, no
questioning or independent thinking. It was my job for a short time to
find a solution, but that's why it was for a short time.
everyone was attempting to write operating systems. We even had one
under development at NSA with the goal of replacing the GE 635 batch
system monitor with a secure time sharing system. This was in
competition with MULTICS, the ill fated Defense project which was a very
good example of how the structured programming practices of the period
produced horrible systems.
Dennis Richie and Ken Thompson, veterans of MULTICS, decided to go off
in a corner at Bell Labs and write UNICS, a pun on the name MULTICS.
There were several false starts, but with the creation of the C
programming language, UNIX was written in just a few months on a PDP-11.
Thompson took a sabbatical to teach at Berkeley and brought the
fledgling UNIX along. Bell Labs, thinking that something that could be
written by just a few people in a few months could not be worth much, so
they freely licensed it to universities. It was enthusiastically
grabbed by many universities to support their research - essentially it
was the only code around that was not proprietary. Berkeley did a great
deal of work on it, was supported by DARPA for much of that work, and
acted as distribution agent for the university community. This was the
real beginning of open source code and was very successful.
SUN Microsystems was launched with the assistance of Bill Joy from
Berkeley and wrote their own version of UNIX based on the Berkeley code.
With the advent of the Internet in the early '80s, work on UNIX really
blossomed, especially with the DEC university distribution of early VAX
machines, the 750s which really produced a lot of new work out of the
university research community, most of it on top of UNIX.
The rapid growth of the Internet produced a demand for reliable
operating systems that could be run on small machines and while SUN and
DEC dominated the server field for a while, UNIX quickly took over as
the operating system of choice since it was so easy to port to small
machines.
The interest in UNIX and the very large community of students who had
worked on UNIX during their graduate education made it natural for UNIX
to find it's way into many operating systems. Then, a guy by the name
of Linus Torvalds at Helsinki University learned how to program and
wrote LINUX, once again in just a few months, drawing heavily on the
open source software community. It was small, tight and very fast - and
he made it available for free!
Red Hat Software picked it up in '93 and gave it commercial quality
support that made it acceptable to the last holdouts in the software
industry. Other companies soon followed with a similar business
strategy.
Image this! Building a business on the basis of free software that had
evolved over 20 years, primarily by kids in universities! Enough to
make the software engineers in the old line computer manufacturers
swallow their pride and pick it up.
I would be willing to bet that most of the web sites that you visit are
running UNIX code!
Web sites are how you judge the value of OS? The last phase of program
production is called maintenance. This is where upgrades and fixes occur.
From the mortality rate of the available PC programs (X11 in my case) itappears that bugs are best fixed by starting over (find a newer program
as the programmer has lost interest) and the upgrade requests fall on deaf
ears (the programmers have left for paying jobs). It may be satisfactory
to select the low bidder for Internet, but do you want your bank, your
hospital, or your Mars space program to rely on one person who just got a
better offer. Does anyone bother to report Mac or PC bugs more than once?
Does the application code provide what should be OS support so that rather
than modernize, Unix has regressed programming. I can only judge by
what's available to me, but I find nothing but minimum architecture
program support and geewhiz programming. Even should their be something
with "commercial quality," whatever that is, the OS is too restrictive and
fragile to support critical applications.
How can you judge Unix, when you list no comparison with OS/400 or some
of the OS's that have passed on because Unix was free. Apparently you only
know about Unix. Programming is a process of which the OS is a tool, if
the tool is faulty, so is the process. But go ahead and blame MS's
programmers for problems with your PC even when the fault really is with
the process.
--
Glenn
.
- Follow-Ups:
- Re: next the good jobs will go
- From: Islander
- Re: next the good jobs will go
- References:
- Re: next the good jobs will go
- From: Islander
- Re: next the good jobs will go
- From: Glenn
- Re: next the good jobs will go
- From: Glenn
- Re: next the good jobs will go
- From: Glenn
- Re: next the good jobs will go
- From: Glenn
- Re: next the good jobs will go
- From: Alan Lichtenstein
- Re: next the good jobs will go
- From: Islander
- Re: next the good jobs will go
- From: Glenn
- Re: next the good jobs will go
- From: Islander
- Re: next the good jobs will go
- From: Glenn
- Re: next the good jobs will go
- From: Islander
- Re: next the good jobs will go
- From: Glenn
- Re: next the good jobs will go
- From: Islander
- Re: next the good jobs will go
- From: Glenn
- Re: next the good jobs will go
- From: Islander
- Re: next the good jobs will go
- From: Glenn
- Re: next the good jobs will go
- From: Islander
- Re: next the good jobs will go
- Prev by Date: Re: Hey, how about that. Tire inflation/tuneups same results as drilling.
- Next by Date: Re: next the good jobs will go
- Previous by thread: Re: next the good jobs will go
- Next by thread: Re: next the good jobs will go
- Index(es):
Relevant Pages
|