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:
В этот день... 21 November