[Haskell-cafe] Re: Hugsvs GHC (again)was: Re: Somerandomnewbiequestions

Keean Schupke k.schupke at imperial.ac.uk
Thu Jan 20 05:22:17 EST 2005


Simon Marlow wrote:

>On 20 January 2005 09:56, Keean Schupke wrote:
>
>  
>
>>Why is disk a special case? I have never heard that all processes
>>under linux wait for a disk read...
>>    
>>
>
>You were talking about Haskell threads, not processes!  These are quite
>different things.
>  
>
But with -threaded GHC is using multiple processes (OS-threads)
to run the Haskell threads. If one OS thread handles IO, and the other
runs the Haskell-thread-scheduler, then Haskell-threads need never
wait for IO - apart form the actual thread doing the IO.

>The reason that disk I/O is different is because select() treats it
>differently, and select() is what GHC's runtime currently uses to
>multiplex I/O.
>  
>
Are you sure? Its not mentioned in the manual...

    Keean.


More information about the Haskell-Cafe mailing list