Welcome, Guest. Please login or register.

Author Topic: Web based OS desktop (In development)  (Read 2367 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline balrogsoftTopic starter

  • Full Member
  • ***
  • Join Date: Jan 2006
  • Posts: 186
    • Show all replies
    • http://www.amigaskoolnet
Web based OS desktop (In development)
« on: December 17, 2006, 07:03:29 PM »
Hi, maybe someone has tried some web based OS, like YouOS and EyeOS, they are complete desktops (EyeOS is in a very early stage, but You OS is very complete). You can work anywhere in a browser, and your files and work will be saved on the server.

After see these desktops i had an idea, why not make an web OS inspired on AmigaOS? Amiga Kernel is known as one of the fastest and efficient microkernels, so it could be possible to adapt this system or philosophy of Amiga kernel for a web desktop.

[EDITED]

I finally got an interesting reading on a newsgroup message, it explain very nice how work multitasking in Amiga, and how works the message system:    
Amiga multitasking tutorial
Balrog Software · http://www.amigaskool.net
Mac Mini G4 1,5ghz · MorphOS 2.7 · Ati Radeon 9200 64Mb · 1 Gb RAM · 80 GB HD
Efika · MorphOS 2.7 · Ati Radeon 9250 128Mb · 120 Gb WD HD
Amiga 1200T · OS 3.9 · Voodoo3 · Blizzard 603e/240mhz 060/50mhz · 98 Mb RAM · 40 GB HD
Amiga 600 · OS 3.1 · ACA 630/25mhz 32 Mb RAM · 4Gb CF
 

Offline balrogsoftTopic starter

  • Full Member
  • ***
  • Join Date: Jan 2006
  • Posts: 186
    • Show all replies
    • http://www.amigaskoolnet
Re: Web based OS desktop (In development)
« Reply #1 on: December 19, 2006, 04:19:09 PM »
Now i had the basic exec developed in Javascript (Tasks and message ports), other things like memory management are not necessary since JS and the browser do it, now i am studying how implement the task scheduler in JS, it's a difficult point because JS isn't multithreading, it work basically with events (onmouseover, onmouseclick, ...), and you can't pause the execution of a function, but i think i found way to manage the frequency for each task function, and have something similar to multitasking, you can have something similar with setinterval in javascript, but with a kernel controlling the execution, it will be more efficient. The events of javascript, will be something similar to a interrupt, and 4 special functions:

open() - Initialise the application.
step() - All operations for the app, is similar to enterFrame event of ActionScript.
draw() - All drawing operations.
close() - Close the application.

I decided to make two functions (step and draw) instead one (eg. run) because then task scheduler can have more possibilities to merge the execution of tasks, remember that JS can't pause a function.

Another thing to be developed are devices, i don't know if it could be usefull on a web based desktop, but it can be an interface for every device, keyboard, sound, ...

What do you think about this crazy project?  :crazy:
Balrog Software · http://www.amigaskool.net
Mac Mini G4 1,5ghz · MorphOS 2.7 · Ati Radeon 9200 64Mb · 1 Gb RAM · 80 GB HD
Efika · MorphOS 2.7 · Ati Radeon 9250 128Mb · 120 Gb WD HD
Amiga 1200T · OS 3.9 · Voodoo3 · Blizzard 603e/240mhz 060/50mhz · 98 Mb RAM · 40 GB HD
Amiga 600 · OS 3.1 · ACA 630/25mhz 32 Mb RAM · 4Gb CF