Drobe :: The archives
About Drobe | Contact | RSS | Twitter | Tech docs | Downloads | BBC Micro

Confirm comment report request

Viking, how can you split the API from the OS? The API is just the entry point, the OS contains the code and the context. You can't just have multiple copies of the same code running in different threads, what is needed is change the code to allow multiple contexts.

Take a simple one such as directory enumeration. Currently the OS only has one context, so an application must call a SWI to get the first file, then make a number of additional calls to get the rest of the files. It cannot allow another task to run during this operation, as if that also talks to the OS, it will destroy the context, and the enumeration will subsequently fail.

Now you can't just run two copies of the entire OS to get round this, firstly because there is only one set of disc hardware, and even if you got round that with virtual machines, you then have not only two separate contexts for the enumeration, but also the disc contents. i.e. the contents of the disc could appear different to each application.

The filing system code needs to be re-written to allow use of the API by separate threads, providing a context for each of them, but maintaining a single consistent state for the filing system (synchronsisng reads and writes by each thread), and driving the disc hardware.

This can only be done by re-writing the OS to be thread aware. There are no short cuts that can be taken, "fork everything" just wont work.

 is a RISC OS Userdruck on 29/5/09 11:07AM
[ Reply | Permalink | Report ]

Click on the button below to confirm you wish to flag up this comment to the website's administrators. Abuse of this service will be frowned upon and it should only be used to notify us of comments that are extremely distasteful, indecent or otherwise unlawful. If you disagree with an opinion expressed or fact stated in a comment, please take part in the debate rather than expect it to be removed.

Return to the drobe.co.uk front page

Details

Reporting user / IP: / 54.92.197.82
Comment GID: 31142
Timestamp: Sun, 25 Feb 2018 21:20:18 +0000

Search the archives

Today's featured article

  • South East show report
    VA Linux, graphics acceleration, CTL and ROL and more
     53 comments, latest by AMS on 01/11/04 1:01PM. Published: 23 Oct 2004

  • Random article

  • TTOTD: Do not discuss the Firefox 2 source patches
    Friendly suggestion or incredible insult, you decide.
     Discuss this. Published: 30 Mar 2007

  • Useful links

    News and media:
    IconbarMyRISCOSArcSiteRISCOScodeANSC.S.A.AnnounceArchiveQercusRiscWorldDrag'n'DropGAG-News

    Top developers:
    RISCOS LtdRISC OS OpenMW SoftwareR-CompAdvantage SixVirtualAcorn

    Dealers:
    CJE MicrosAPDLCastlea4X-AmpleLiquid SiliconWebmonster

    Usergroups:
    WROCCRONENKACCIRUGSASAUGROUGOLRONWUGMUGWAUGGAGRISCOS.be

    Useful:
    RISCOS.org.ukRISCOS.orgRISCOS.infoFilebaseChris Why's Acorn/RISC OS collectionNetSurf

    Non-RISC OS:
    The RegisterThe InquirerApple InsiderBBC NewsSky NewsGoogle Newsxkcddiodesign


    © 1999-2009 The Drobe Team. Some rights reserved, click here for more information
    Powered by MiniDrobeCMS, based on J4U | Statistics
    "Your fellow contributor to Drobe seems to have a personal dislike of anything that does not come from Castle"
    Page generated in 0.0937 seconds.