|
ZX Time #06
09 января 2002 |
|
Forum - Multitasking and OS.

Forum
Readers
From the Editor: I remember at the very beginning one of the
readers suggested organize under ZXTime some semblance section
"Forum" from the ZX-Revue. First I have ignored this proposal,
justifying himself by the phrase "Who can we write about will
!"... But times have changed and today We already have a pretty
decent luggage messages and themes for discussion. And now I'm
sure that readers will not be ignored, this initiative ... Yes?
A topic of discussion today is ...
Multitasking and OS
The first floor is given cr0acker2:
Here I decided to write on a multitasking operating system.
In general, multi-tasking OS Speke pond pond. The earliest was
the best. It was a DOMAIN OS. She was very well spun. Look
magazines 96 years. There's all just talk The domain of the
sprinters and wasps. She stuck other processes are already
working, but waiting for input from the clave. And braking
trdosovskih programs there were no more 2,550 percent. Yes to
the axle a lot of adapted TR-DOSOVSKIH programs.
Why did she lose? I can not be
rights, but the main reason LAZINESS author.
The author struggled on the mortgage to release their OS
for sprinters. But that's not running for a sprinter, not an OS
for the Spectrum. Understand OS raspostranitsya only if
she or her portion will be stored in Roma.
Modern Roma accommodates about
512K. Schema only need a rum
Connect! Now you're here talking about that
OS should be every time interpitirovatsya.
It will be very funny. On account of the language I
came to this conclusion. The language should be
C. With beautiful language though I do not
love. And this is a bluff that the cake is not enough
might work on C. I have a HT there
Minix and worth every day I use
gcc. Moreover, in HT 640KB memory. And the cake
48 - 4096. In our country walks with three versions: HiSoft C,
another version of a peasant, and not always produced version
RST7 (Uncle RST7 well, and where is your C?). Most normal
of them Hisoft C. But it has not received proliferation because
of its 48sti. I think it becomes usability if you make changes
in the following items: memory support 128256-512-1024-4096
interface ALASM-like, Editor pozvollyayuschy edit
text on the entire file into TRDOSE (ACEDIT),
support 80 characters for the three schemes,
Alco, PENT, 8Profi, may make
support for GMX. It's all needed in the
compiler. In principle, having such
compiler can not write anything of his own, and the same port
Minix. Now, iron ... I think the minimum configuration of OS
should be 7Mhz-256 and the kernel should ponostyu, together
with the Drava and the API to accommodate a 128 kb. When 512 is
More something is located. And when 4.1 MB ... The memory must
rameshatsya the entire disk, but will he? Now for what the car
needed to navigate ... I think that we need to focus on
manufactured cars. As far as I know now produced two cars:
KAY1024 and Sprinter. Need to do two versions of the OS
kai and Sprinter. And that they were flying and
by Kaye, and Sprinter. In Sprinter wasps
shall be operated Sprinter. Now the graphics core. It should be
based on three graphic gadgets:
1) the main mode: NO BORDER (Alco
scheme);
2) Hardware Multicolor;
These two gadgets can make yourself
each. They are very easy to do.
2) the advanced mode - this is high
expansion of penta and profiles, as well as GMX
scorpion fish. We all need to twist Sprinter
at 640x200. OS should be sewn into the bios.
And it is an axiom. Otherwise it will fail. AND
last - the OS should have the TOOLS for
odaptatsii TR-DOSOVSKIH program to the OS.
Well, that's all I wanted to say ...
- - -
Following opinion came from Sinus'a of
Savers Alliance ...
In Zx Time 4 was an article about multitasking with something
like this sense: there are two bend in the memory, switch them
to interrupt. Once I did so: brakes creepy. imho better to do
on the principle of preemptive multitasking. If not
set prog priorities, it is
can be realized at Speke. So: suppose there is some
multi-tasking operating system (and not pIS-DOS) window type
(ex. WICROSOFT (R) MINDOWS (TM), Work Bench,
OS / 2, MacOS, ...). Further, for clarity
bring a piece of code:
org # c000; start the program with # c000,
, So you can keep
; A lot of prog in Banks
ld ix, Wind; address window handle
call wOpenWindow; open the window
jp wMain; and jump to the OS
windowFunc; window function;)
bit wPRESSED, C; whether USER has pressed the Settings button
, Ku?
jp z, wMain; if not, then jump into the
; OS
cp # ff; if you click Cres
; Tick "(like" close window ")
jp z, wCloseProgramm
cp 1, the first button (CLOSE)
jp z, wCloseProgramm
cp 2
jp z, # 0000 and the second button ('RST 0')
cp 3
call z, changeBorder; button (BORDER)
jp wMain
cnangeBorder
call rnd
out (# fe), a
ret
rnd ......
Wind db 5,5,10,20; x, y, h, l
db "Test window", 0; window title
dw windowFunc; address of the program
; Processing
db 1, wBUTTON, 0,0, "CLOSE", 0, number
; Item type
; Element, x, y,
; Name
db 2, wBUTTON, 0,2, "RST 0, 0
db 3, wBUTTON, 0,4, "BORDER", 0
db # ff; the end
Now try to explain all this
delirium. How much of the bend, no longer
prog importantly, on the contrary, the window now
runs prog. Now the main idea: to
Operating system in turn calls windowFunc each window. If the
program (as in the example) nothing else, it simply passes
running, or doing a quick
what we need, and, again, passes control to the OS. And so each
application. In Consequently, if the user does not
does, and the prog does not spend on it
his precious clock cycles. And if he pressed in any window,
button, only the application and react. And if necessary, until
the user is doing nothing or working with another application
something to count, then slightly modify windowFunc:
windowFunc push af, bc, de, hl; save
; Registers
call myProgCalc; something de
; Barking
pop hl, de, bc, af; recover
; Registers
bit wPRESSED, C ...
....
Attention! That there was no such wild
brakes, as in windsurfing, the procedure
myProgCalc should be as
faster.
- - -
Well, that's the whole "forum" for today. Now I'm passing the
word itself:) (DWT). Immediately I want to say - "Forum" - a
section purely library. Can bring up absolutely any topic! Some
thought to the account of a can also send a "Forum". In
general, give section "Forum" in your hands, readers.
The only request: If your letter
oriented in this section, the so-
it (the letter) and mark (say, "In
Forum ").
*
Other articles:
Similar articles:
В этот день... 15 November