[so2] KLT vs ULT

Vali Ghita valx92 at gmail.com
Wed Mar 18 22:00:04 EET 2015


Pai de exemplu, poti sa setezi un timer care declanseaza handler-ul la
fiecare 3 secunde.
In handler-ul respectiv salvezi registrii pe stiva (salvezi contextul)
si refaci starea altui thread. Operatiile astea se pot face prin
inline assembly, fara niciun apel de sistem.

În data de 18 martie 2015, 21:56, Istrate Roxana via so2
<so2 at cursuri.cs.pub.ro> a scris:
> Acel "Deci inclusiv schimbarea de context se face la nivel user" mi se pare
> cam vag. Cum mai exact faci in user asta?
> Cum spui "acum e threadul1 dupa 3 sec intra threadul2"?
>
> Asa la nivel conceptual poti intelege ca bun, se face in user, dar cum?
>
> 2015-03-18 21:51 GMT+02:00 Vali Ghita <valx92 at gmail.com>:
>>
>> Buna,
>>
>> Din ce stiu eu, User Level Threads se refera la thread-uri
>> implementate la nivel utilizator, adica sunt implementate in librarii
>> user space si nu au nevoie de apeluri de sistem pentru a functiona.
>> Deci inclusiv schimbarea de context se face la nivel user si nu e
>> nevoie de interventia kernelului ca in cazul Kernel Level Threads.
>>
>> În data de 18 martie 2015, 21:35, Istrate Roxana via so2
>> <so2 at cursuri.cs.pub.ro> a scris:
>> > Buna,
>> >
>> > Incercand sa inteleg la ce sunt bune Kernel Level Threads am ajuns la un
>> > paragraf din laboratorul de SO1,
>> > in care spune:
>> >
>> > " User Level Threads
>> >
>> > Schimbarea contextului nu necesită intervenția kernel-ului, iar
>> > algoritmul
>> > de planificare depinde de aplicație."
>> >
>> > Cum ar putea sa existe schimbare de context fara interventia kernelului?
>> >
>> > In afara de rularea threadurilor user, KLT fac altceva mai special ce-mi
>> > scapa mie?
>> >
>> > _______________________________________________
>> > http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii
>
>
>
> _______________________________________________
> http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii


More information about the so2 mailing list