SMSQE in MisTer

Nagging hardware related question? Post here!
Derek_Stewart
Font of All Knowledge
Posts: 3928
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: SMSQE in MisTer

Post by Derek_Stewart »

Hi,

Just have both...

I like to have all QL based systems.


Regards,

Derek
Tinyfpga
Gold Card
Posts: 252
Joined: Thu Sep 27, 2018 1:59 am

Re: SMSQE in MisTer

Post by Tinyfpga »

To what end indeed! -- I wasn’t particularly thinking of an end but to a future. Rather than dwelling on the past and for the shear challenge and pleasure of it, one could design hardware in which to develop Stella and a commensurate UI and programming environment.

When I say one, this unfortunately doesn’t include technical assistance from me. I would have developed a Stella system years ago if I had been capable of doing so.

The first attempt to a future and a move away from QL compatibility was SMS2. It was a commercial failure but it led to the development of Stella. Without SMS2 there would no Stella and no SMSQE. Although I think the creation of SMSQE was a retrograde step, it did enthuse Qlers and thus the development of high resolution systems that have preserved TTs ideas to the present day, but in Stella there is the possibility of developing a truly different computing platform.

When Peter Graf announced his Qzero I was genuinely excited. I thought: here is the beginning of something truly different and, in my opinion, different is the main attraction of TT’s proposals. As you suggest there is ample colourful choice for those that like to tinker with computing but most of it is much of a muchness and nothing I have ever found interests me as much as Stella.

Whilst I like the Q68 very much and its development is a great achievement, it is, as Peter states, a ten year old QL compatible design. The DE10 is a much more complex design than either the Q68 or the Qzero and It was not designed to support SMS.
I don’t think Peter wants to be involved in projects that expose him to public interest but MK seems less concerned on such matters. How to enthuse the limited “developer power” and Qlers in general, is a problem that has vexed even TT.

One last thing:- I had no idea one could switch off multitasking. How is this done? What is the purpose of doing this and shouldn’t programmers extend the OS rather than by-passing it?


User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: SMSQE in MisTer

Post by NormanDunbar »

https://qdosmsq.dunbar-it.co.uk/doku.ph ... ap_0:start

Shows how to enter supervisor mode which stop multitasking, and how to get back to user mode again.

Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
Derek_Stewart
Font of All Knowledge
Posts: 3928
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: SMSQE in MisTer

Post by Derek_Stewart »

Hi,

With regards to the history of SMSQ/E:
Tinyfpga wrote:The first attempt to a future and a move away from QL compatibility was SMS2. It was a commercial failure but it led to the development of Stella. Without SMS2 there would no Stella and no SMSQE. Although I think the creation of SMSQE was a retrograde step, it did enthuse Qlers and thus the development of high resolution systems that have preserved TTs ideas to the present day, but in Stella there is the possibility of developing a truly different computing platform.
I am interested in the development of SMS(2), as in early days, Ton y Tebby did not really publicise the issues, are you able to summarise the details of the comerical failure of Stella?


Regards,

Derek
User avatar
Peter
QL Wafer Drive
Posts: 1953
Joined: Sat Jan 22, 2011 8:47 am

Re: SMSQE in MisTer

Post by Peter »

Tinyfpga wrote:When Peter Graf announced his Qzero I was genuinely excited. I thought: here is the beginning of something truly different and, in my opinion, different is the main attraction of TT’s proposals.
I do admit that the Qzero had (still has?) some exciting potential and I feel sorry that I must have disappointed you and others by not releasing it.
Unfortunately age and life circumstances limit the energy I can invest into a hobby project. And turning it into more than a hobby project is not on my agenda as long as I have a daytime job. There is small progress inasmuch two other persons have a Qzero by now. So at least it is not completely dead.


Tinyfpga
Gold Card
Posts: 252
Joined: Thu Sep 27, 2018 1:59 am

Re: SMSQE in MisTer

Post by Tinyfpga »

As seems to be inevitable: posts wander off-topic, and so to answer Derek's question, I will start a new topic.

The SMS to Stella story should be written by a comic genius. Someone like Douglas Adams (or maybe the "Pub Landlord"), for it is a wonderful example of the inability of the British to commercialise their engineering brilliance. This hopelessness is tragic but in the greater scheme of things, it is also a source of great mirth.

This is the following message I get when clicking on Norms link. A better demonstration of entering supervisor mode would be hard to beat.
Norm1.JPG
I don't suppose you could answer my following question:-
What is the purpose of doing this and shouldn’t programmers extend the OS rather than by-passing it?

I am glad that Peter has made (I assume he made them) two more Zeros. As the British might say:- "Lucky b------s". This news is sort-of encouraging and I am still convinced it has a lot of potential.


User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: SMSQE in MisTer

Post by NormanDunbar »

Regrading "Your connection is not secure", that's because my site hasn't paid up for an SSL certificate yet. So you can only go there with HTTP rather than HTTPS. :( I'll get around to it some day.

In the meantime, if you trust me, click "advanced" then there will be a link saying "proceed to qdosmsq.dunbar-it.co.uk (unsecure)" you can click that to get to the site.

Why would I enter supervisor mode? For anything that needs accurate timing perhaps? QDOS mostly runs in supervisor mode (Dickens, Advanced QL User Guide, pg 14) and a number/some of the QDOS Vectored routines need to be executed in supervisor mode. (MM_ALCHP, MM_RECHP, IO_SERQ and IO_SERIO (Dickins, Section 8.1)

Mind you, thinks may have changed since Dickins day. (1984)


Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
mk79
QL Wafer Drive
Posts: 1349
Joined: Sun Feb 02, 2014 10:54 am
Location: Esslingen/Germany
Contact:

Re: SMSQE in MisTer

Post by mk79 »

NormanDunbar wrote:Regrading "Your connection is not secure", that's because my site hasn't paid up for an SSL certificate yet.
Isn't it hostes by IONOS? All packages should have one free certificate now.
Why would I enter supervisor mode? For anything that needs accurate timing perhaps?
For example. Also, if you don't have mutexe and stuff, which TT didn't like, you need some other way to do atomic stuff.

Marcel


Tinyfpga
Gold Card
Posts: 252
Joined: Thu Sep 27, 2018 1:59 am

Re: SMSQE in MisTer

Post by Tinyfpga »

This should be in a new topic but it is in direct response to Norm's and MK's posts above.

Bear in mind that I don't really know of what I am writing about, but, as no one to date has explained in, layman's terms, the essence of what TT once said could be described as an "Atomic operating system", I am going to have a go, expecting to be corrected.

I am led to understand that whilst memory is being accessed by something, no other thing can access it at the same time. Memory access is atomic.

I am further led to understand that early system software writers did not really grasp this physical reality. They thought either that memory access was not atomic or that some time in the future memory access would cease to be atomic, so they created complex, time consuming and fragile mechanisms to prevent something they thought might happen, even though it can't.

Multitasking OS "architects" have to create a mechanism to allow more than one code stream to share memory preemptively. He calculated that:- all he had to do, was to provide services to application programs in tiny atomic packets of code, presumably code running in supervisor mode, such that the time taken to execute these packets was less than the time taken to resolve the contention mechanisms of conventional architectures.
So by the time conventional systems have merely resolved resource contention, SMS "has been and gone and done it", whilst the conventional system has yet to execute some useful code..

In later documents he named his atomic system construction "Intsafe". Presumably short for Intrinsically safe.

In one fell swoop TT had eliminated mechanisms that have plagued multitasking systems and at the same time improved system performance, especially under load.

The complication of I/O contention within TT's atomic system was explained but I never understood it.

To ensure that SMS runs smoothly, I assume that software writers, who know what they are doing, enter supervisor mode only for a very short period of time.

Now, I am not at all certain that any of this is true and if it is true I have no idea whether it's still a good idea in modern multi-processor systems.
TT always claimed that his technology stood true for all general purpose computing systems.

If it is not true maybe someone can explain, in layman's terms, what is true? What seems to be certain is that Stella is significantly superior to SMS.

By the way I did as I was told and managed to access Norm's site. Is the QDOSSMSQ stuff available as a single document?
Last edited by Tinyfpga on Sat Oct 09, 2021 9:22 pm, edited 1 time in total.


User avatar
mk79
QL Wafer Drive
Posts: 1349
Joined: Sun Feb 02, 2014 10:54 am
Location: Esslingen/Germany
Contact:

Re: SMSQE in MisTer

Post by mk79 »

Tinyfpga wrote:I am led to understand that whilst memory is being accessed by something, no other thing can have access to it at the same time. Memory access is atomic.
Well, that assumption is already wrong for any modern computer with more than one core. Memory access on system with multiple CPUs, which again is the norm these days, is a very difficult topic which most people would get wrong most of the time if they didn't get help from their operating system, compiler and CPU architecture (x86 CPUs have a very strong memory model with few surprises, so even wrong code tends to work most of the time, but others can be sort of mind boggling).
I am further led to understand that early system software writers did not really grasp this physical reality. They thought either that memory access was not atomic or that some time in the future memory access would cease to be atomic, so they created complex, time consuming and fragile mechanisms to prevent something they thought might happen, even though it can't.
Well, as your premise is faulty your conclusion goes with it.

But even if memory accesses were atomic, most data structures don't fit into a single 32-bit word, so atomicity at the word level doesn't help you in any case. So you either need atomicity at a larger level (supervisor mode) or some sort of locking. Supervisor mode is out of the question in modern operating systems, no application must ever have this much power, so you're back to the old "computer sciency" stuff like locking, mutexe and stuff.
To ensure that SMS runs smoothly, I assume that software writers, who know what they are doing, enter supervisor mode only for a very short period of time.
Aaaah, but how many really know what they are doing? :D And even if they know what they are doing, it is a LOT easier do just go supervisor, do your stuff, and don't worry about the rest... which is why people do it. Also, e.g. reading a microdrive for example is highly timing critical AND takes a long time. You can't do it in "short periods of time".
If it is not true maybe someone can explain, in layman's terms, what is true? What seems to be certain is that Stella is significantly superior to SMS.
I have no idea.


Post Reply