Cuándo declarar main y otra duda

Cuándo declarar main y otra duda

de Leandro Ezequiel Dominguez Perez -
Número de respuestas: 2

Buenas,

Tengo 2 dudas sobre interrupciones que me surgieron con el ejercicio 7 del práctico 8, pero son generales:
1) ¿Cuándo es necesario declarar el main y cuándo no?
2) A veces, cuando tengo que hacer algo hasta que determinado bit cambie, "tranco" el programa en un while sin instrucciones hasta que el mismo bit sea cambiado por el hardware y después siga con las demás instrucciones teniendo en cuenta que si salió del bucle significa que el bit fue cambiado. 
He visto algunas soluciones así y otras que simplemente usan el while(true) y varios ifs. (Por las dudas: además de los bucles también uso el while(true))

¿Estas 2 preguntas están relacionadas con que la máquina sea dedicada o no?
Gracias!

P.D: Encontré el siguiente link pero no me queda muy claro.

En respuesta a Leandro Ezequiel Dominguez Perez

Re: Cuándo declarar main y otra duda

de Federico Rivero -

Estimado.

1) Siempre deberías declarar el main. Cuando al máquina es dedicada, dicho main corresponde al único programa que está ejecutando, por lo tanto es absolutamente obligatorio declararla y agregar un 'while (true)' para evitar la ejecución de instrucciones no definidas (basura). En máquinas no dedicadas, el main corresponde a una rutina de inicialización, que será invocada por el programa que se encargue del control del sistema (sistema operativo por ejemplo), en ella se debería incluir la inicialización de variables y la instalación de las rutinas de interrupción que use tu programa.

2) No estoy seguro de cuál es la pregunta. Esta práctica tenés que usarla con cuidado: en máquinas dedicadas tenés que estar seguro de que no estás dejando otras tareas sin atender, y en máquinas no dedicadas tenés que estar seguro de que es tu única opción :) (porque esto va a demorar no solo tu programa sino todos los demás que estén utilizando el sistema).

Saludos,

         Federico

En respuesta a Federico Rivero

Re: Cuándo declarar main y otra duda

de Leandro Ezequiel Dominguez Perez -

Me queda mucho más claro, gracias.
Con la segunda pregunta me refería a, por ejemplo, el ejercicio de las TECLAS <ESC><N> del práctico, que como el ingreso de las teclas no produce interrupciones, la única forma que encontré de solucionarlo era implementando un while(IN(TECLA)!=ESC);, si mal no recuerdo.

Saludos!