On 03/25/2011 09:27 AM, ratheesh kannoth wrote:
On Fri, Mar 25, 2011 at 8:54 PM, Gary Thomas<[email protected]> wrote:
On 03/25/2011 09:17 AM, ratheesh kannoth wrote:
Is there any prob with below code segment in eCos ?
{
fd_set rd_fds;
FD_ZERO(&rd_fds);
while (1) {
timeout.tv_sec = 1;
timeout.tv_usec = 0;
if (select(0,&rd_fds, NULL, NULL,&timeout)< 0) {
printf("\n Error \n");
sleep(1);
continue;
}
printf("\n Success \n");
}
}
Yes - the first parameter to select() is the number of open file
descriptors to check (fd in 0..N-1). Putting a zero there will
never yield any activity.
Typically, one puts the max # of open file descriptors or at
least the highest known open one + 1.
True. But it runs perfectly on eCos and linux. I facing some
problem, whenever i hit a key on keyboard in eCos. Is there connection
to this select system call here.
How are you connecting to the keyboard? If you are just using stdin,
the default will be the debug/console channel which is not interrupt
driven and select can't help you.
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss