[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re[2]: multi-threaded Emacs

From: ak70
Subject: Re[2]: multi-threaded Emacs
Date: Wed, 3 Dec 2008 08:59:09 +0100

Hi, guys. I have a generic user-level thread library on Linux. Maybe it can 
The thread system is called SMASH developed by Kurt Debattista in 2001 as his 
master study in University of Malta. 
It uses the two level scheduling model, i.e. we have m user level threads 
running on top of n kernel threads. If you guys are interested,
I can send you the thesis about it( it is a pdf file of size 1Mb). 
A few month ago, I obtained the permission from Kurt to release it under GPL. I 
did some work on it too for my undergraduate study.
The problems:
1. It is platform dependent. Kurt and I used some x86 assembly language to 
implement spin locks and lock-free algorithms.
2. It lacks some common features that you would expect in a thread library. For 
example it has no thread id and when a user-level terminates,
the thread structure will not be destroyed. This is however done on purpose, 
because our  supervisor argued that SMASH should be at the lowest
level so that any fancy(or not so fancy) features should be implemented by 
other libraries built on top of it.
3. Since it is developed as a academic project, a lot of decisions were made in 
favor of our study, not production use.

I think it is a good starting point, but it is not for immediate use. So what 
you guys think? Are you interested?
> -----Original Message-----
> From: Giuseppe Scrivano <address@hidden>
> To: Stefan Monnier <address@hidden>
> Cc: address@hidden, address@hidden
> Date: 12/02/08 23:41
> Subject: Re: multi-threaded Emacs
> Stefan Monnier <address@hidden> writes:
> > I rarely use multiple terminals, and when I use them, the current
> > restrictions are mostly bearable.  OTOH I very often would like to keep
> > using my Emacs while it's byte-compiling some files, or while Gnus is
> > fetching some newsgroup.
> This is exactly the problem I had when I first thought of threads.
> Do you think we can solve it (at least partially) using a concurrent
> model?
> Thanks,
> Giuseppe

reply via email to

[Prev in Thread] Current Thread [Next in Thread]