On 11/08/2017 04:02 AM, Christian Gagneraud wrote:
On 8 November 2017 at 13:35, Roland Hughes <rol...@logikalsolutions.com> wrote:
Back in the days of the VAX 11/750 all of that microcode (what it was called
I know VACOS (VAcuum Cleaner Operated System) but I do not know VAX, sorry! ;)
This site has a picture, but pretty much everything else they list is wrong.
http://gunkies.org/wiki/VAX-11/750

A bit better write up. The first OS to run on it was VMS. Later there was Ultrix and other things.
https://en.wikipedia.org/wiki/VAX-11

VMS was and still is the operating system created by God.  When it posolutely absitivly __has__ to work it goes on VMS. VMS clusters (the only real clusters) now called OpenVMS clusters, have contiguous uptimes measured in decades. The vast majority of systems written for and still running on this platform were designed to run correctly long after the human race is extinct. That's not a joke. Most every nuclear power plant in the world, vast majority of steel and paper mills, any and every place a really bad thing will happen if a worthless PC OS was used.

If you search around you can find, it's either the Irish or the British railway system has been running for over 17 years of contiguous up time.

If you want to know how to program on it, you can find a copy of this:
http://theminimumyouneedtoknow.com/app_book.html
Actually, Dr. Dobb's decided that book is one of the few books which should be on every programmer's book shelf
http://www.drdobbs.com/tools/developers-reading-list/232500396?pgno=6



then) was on a cassette tape you turned the key to boot from. Whole menu of
diagnostics. Today we see a good number of systems returning to built in
test and calibration code.
Yeah, that completely true. But I see these as "system test", not unit test.
I don't think i want to run my system tests from QtC. Sounds like a click bait.
You could argue, that using Boot2Qt with their qemu stuff, you could
achieve that.
But I still think it's the wrong abstraction level.
A simulated Boot2Qt always runs in a x86 vm. It does boot the same
embedded linux distro but it doesn't boot on the same virtualised
hardware. I guess you could tweak the arch in Yocto, maybe... is it
worth?

Anyway, it's an interesting topic, for example are we talking factory
site auto-tests (eg. flash) or customer site auto-test (eg. remote
update)?
How much HW can you emulate/simulate that will make your tests meaningful?


"All life is sacred" she uttered while eating a steak.

Sorry, your viewpoint reminded me of a snippet of a novel I've returned to working on and have been serializing in un-edited form on an authors blog.

http://www.interestingauthors.com/blog/fiction/my-orphan-pt-1/

It will be a few days yet before the characters have the discussion about "All life is sacred" and humans being forced to eat other things which were once living, therefore "all" has a rather scoped definition.

Here, your definition of "unit" is rather scoped. It's not your fault. If you actually went to college for programming (be surprised how many in this field never did) and you were taught real logic, without PASCAL as part of the course, you had instructors teaching you each function required a "unit test." This was college. You were learning and this was all you had to work with, the single function you had just written.

In there defense, from the 1970s through to the late 1980s, many, many programmers were writing either for commercial sale, or in-house use, "library" functions. When C finally came out there were, perhaps thousands, of C function libraries for sale during days of DOS. Screen libraries, indexed file IO libraries, "super functions," the list went on and on. Some of it would still be useful today if the companies which wrote them hadn't went out of business without OpenSourcing the license. Other exist only on 5.25" floppies few can even read. "The C-Users Journal" used to let you purchase 5.25" floppies of all kinds of code written by staff and contributors. All of it is long since gone. Some of it would still be useful today.

When it comes to the world of embedded systems, "unit" has a much larger meaning and for good reason. Take something like a patient monitor. Some little device which puts a user interface and some control software into a box which then includes:

1) A blood pressure cuff pump with pressure sensors
2) An SP/O2 finger clip unit with current sensors
3) A temperature unit.

There could be other things in the monitor as well, but let us just assume this set. Each of these things is a "unit." The bundling of all of them into one device is also a "unit." Why does this terminology matter?

Unitized parts.

Each "unit" has to endure some, potentially 7+ years long, clinical trial/testing process in a regulated environment. I don't remember the exact wording of the FDA training, but, the higher the potential for "adverse outcome" the more intense and lengthy the testing process. Putting that in simple terms, a surgical robot goes through way more testing that a computerized temperature monitor. Policy and procedures are in place everywhere to cross check wacky temperature, blood pressure, SP/O2, etc. readings manually which is why hospitals tend to have half a dozen temperature taking methods and still have scads of manually operated cuffs for your arm.

What _is_ important about all of this is the concept of "unitized parts." When assembling your patient monitor you make certain to utilize a unit for each reading which has already gone through the approval process. Now your unit, which is a front end for all of these other units and sends data back to one or more remote systems, just needs to prove itself and that it doesn't interfere with the other previously proven units.

Economies of scale are achieved by utilizing the same parts over and over across different products. You can only do that if each part is a fully tested unit.

While I will be the first to state:

Professionals Don't Use Microsoft Products

Microsoft attempted to do this with VBX controls. Things you dragged and dropped into your desktop application then tweaked a few settings on so they did what you wanted. They were supposed to be trusted units. Problem was the slipshod coding and AGILE practices turned most of them into randomly exploding bombs rather than trusted units.



--
Roland Hughes, President
Logikal Solutions
(630)-205-1593

http://www.theminimumyouneedtoknow.com
http://www.infiniteexposure.net
http://www.johnsmith-book.com
http://www.logikalblog.com
http://www.interestingauthors.com/blog
http://lesedi.us/
http://onedollarcontentstore.com

_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to