C/Visual C - Hilos + prioridad

 
Vista:

Hilos + prioridad

Publicado por kapachov (12 intervenciones) el 06/02/2006 10:06:09
Holas...

Alguien sabe el porque no se puede dar prioridades en los hilos en GNU/Linux!?

[qoute]
Note

It is not guaranteed, that threads with different priorities really behave accordingly. On some systems (e.g. Linux) there are no thread priorities. On other systems (e.g. Solaris) there doesn't seem to be different scheduling for different priorities. All in all try to avoid being dependent on priorities. Use G_THREAD_PRIORITY_NORMAL here as a default.
[/qoute]

Alguien sabe como puedo hacer esto!?

Saludos...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Hilos + prioridad

Publicado por kero (45 intervenciones) el 06/02/2006 23:49:35
La razon es muy simple y tiene que ver con el algoritmo de planificacion que posee linux. Linux no ve hilos sino que su planificacion se basa en procesos por eso los hilos en linux no son hilos realmente sino algo asi como procesos que parecen hilos.
Las prioridades linux se las asigna a los procesos porque para linux no existen los hilos. No se si me explico bien pero cualquier cosa escribi otra ves y trato de explicarlo un poco mejor.

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Hilos + prioridad

Publicado por kapachov (12 intervenciones) el 07/02/2006 10:02:58
Holas....

Bueno, creo entender, pero no se a que algoritmo de planificacion te refieres?
existe en algun lugar algo documentado, es decir en la GTK comentan algo al
respecto, porque segun veo parece que no.

Muchas gracias por la explicacion...

Si pudieras enviarme mas informacion te lo agradeceria.

Salut...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Hilos + prioridad

Publicado por kero (45 intervenciones) el 08/02/2006 00:32:58
Bien el algoritmo de planificacion al que hago referencia es lo que utilisa el sistema operativo para poder asignarle el uso de CPU a los programas siguiendo el dichoso algoritmo. Como ese algoritmo no esta hecho para hilos entonces solo le asigna prioridades a los procesos. me explico??
Informacion hay mucha sobre el algoritmo de planificacion en linux pero es muy tecnica y si no tenes conocimientos sobre sistemas operativos no te lo recomiendo pero si aun asi queres enterarte podes agarrar cualquier libro que hable sobre sistemas operativos. Te recomiendo "Modern operating sistems" de andrew tanenbaum.

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Hilos + prioridad

Publicado por kapachov (12 intervenciones) el 08/02/2006 10:00:54
Holas...

Bueno muchas gracias por la ayuda, y por las recomendaciones...

He encontrado una funcion pthread_create que al parecer deja asignarle prioridad a los hilos...

Salut...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Hilos + prioridad

Publicado por kero (45 intervenciones) el 08/02/2006 23:19:41
Bueno en realidad esa funcion no da lo que se llama prioridades propiamente dichas pero si te sirve me alegro de haber sabido antes que esa funcion te servia para hacer lo que estes haciendo te lo hubiera dicho.
Suerte.

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Hilos + prioridad

Publicado por kapachov (12 intervenciones) el 09/02/2006 10:22:39
Holas....

Bueno en realidad, no la he probado he leido el man del pthread_create, y vi una parte que comentaba
lo de las prioridades pero no se si se pueda hacer lo que necesito...
Con que te refieres cuando dices "prioridades propiamente dichas"...

gracias por la ayuda...

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Hilos + prioridad

Publicado por kero (45 intervenciones) el 09/02/2006 23:14:46
Hola bueno me refiero a que las prioridades no se las podes asignar directamente a esa funcion si no que lo que tenes que hacer para que un hilo sea mas prioritario que otro es usar lo que se llama semaforos.
Una pregunta: me podes comentar mas o menos que estas haciendo?? porque quiza para lo que estas haciendo haya otra solucion y no me estoy dando cuenta.

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Hilos + prioridad

Publicado por kapachov (12 intervenciones) el 10/02/2006 10:34:56
Holas...

Bueno mas o menos es esto tengo dos ejecutable y unas librerias para:

- libreria1 : entrada datos.
- libreria2 : drivers dispositivos.
- libreria3 : comunicacion puerto serie.
- libreria4 : creacion memoria compartida.
- libreria5 : enlace (libreria2 <- libreria5 -> libreria4)
- libreria6 : comunicacion BD

- exe1 : manejo de libreria[12345]
- exe2 : manejo de libreria[56]

- hay un proceso (se crean hilos para que sean independientes unos dispositivos de otros) que es el de
dejar un valor en la memoria compartida, y el otro proceso es cojer ese valor y meterlo en una BD(aqui
ya vemos la necesidad de semaforos). El valor lo ha cojido del puerto serie.

- hay un clase de dispositivos que deben de tener prioridad sobre los anteriores, es decir como cada hilo
va al puerto serie y lo bloquea hasta terminar, entonces este proceso el de prioridad mayor debe
ponerse siempre despues del que esta bloqueando en ese momento el puerto. (me he explicado bien?)

Basicamente es eso.

Saludos...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Hilos + prioridad

Publicado por kero (45 intervenciones) el 13/02/2006 03:32:54
Hola me parecio bastante detallada tu explicacion y muy buena. Bueno ahora sabiendo esto te digo que la funcion de la cual hablabamos( pthread_create ) te va a ser util pero en su mayoria lo que vos estas tratando de lograr basicamente lo vas a lograr con los semaforos lo cual no significa que no este bien el hecho de buscar una funcion que le diera prioridad a un hilo sobre otro. Con pthread_create, pthread_join y una par de semaforos bien puestos deberia ser suficiente.

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Hilos + prioridad

Publicado por kapachov (12 intervenciones) el 13/02/2006 15:08:14
Holas...

bueno muchas gracias por tu colaboracion. Voy a ver como lo monto despues de todo esto :-)

Salut...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar