[so2] Planificarea de tasklet-uri mutiple
Vlad Dogaru
ddvlad at herebedragons.ro
Fri Jul 25 17:07:47 EEST 2014
On Fri, Jul 25, 2014 at 04:35:48PM +0300, Catalin Vasile wrote:
> @Vlad suna un pic ciudat totusi.
> Prin impartirea in upper si bottom half parca se urmarea scurtarea codului
> din upper half ca sa nu ramana procesorul prea mult blocat intrerupere si
> sa se poata deservi repede alte intreruperi.
> Daca aceeasi intrerupere e triggered de 2 ori si nu i s-a terminat
> tasklet-ul primei executii, a doua intrerupere nu va fi tratata complet
> (tasklet-ul ei va fi ignorat) ?
Ba da, se poate întâmpla. This is where the programmer steps in :)
Poți, de exemplu, ca în întrerupere să adaugi "work" (whatever work is)
la o coadă, urmând ca în tasklet să nu procesezi doar un "work", ci
toată coada.
Sau poate device-ul să aibă un ring buffer și tu să citești în tasklet
toate intrările valide din buffer.
Sau, dacă se pretează, dezactivezi întreruperea până se rulează
tasklet-ul.
Or a bunch of other options.
Vlad
More information about the so2
mailing list