hi all How to understand some codes in the function of __FD_SET?
lx
lxlenovostar at gmail.com
Sun Nov 3 01:35:28 EST 2013
hi all:
the codes of functions is:
51 <http://lxr.oss.org.cn/source/include/asm-sh/posix_types.h?v=2.6.16#L51>
#undef __FD_SET <http://lxr.oss.org.cn/ident?v=2.6.16;i=__FD_SET>
52 <http://lxr.oss.org.cn/source/include/asm-sh/posix_types.h?v=2.6.16#L52>
static __inline__ void __FD_SET
<http://lxr.oss.org.cn/ident?v=2.6.16;i=__FD_SET>(unsigned long __fd,
__kernel_fd_set
<http://lxr.oss.org.cn/ident?v=2.6.16;i=__kernel_fd_set> *__fdsetp)
53 <http://lxr.oss.org.cn/source/include/asm-sh/posix_types.h?v=2.6.16#L53> {
54 <http://lxr.oss.org.cn/source/include/asm-sh/posix_types.h?v=2.6.16#L54>
unsigned long __tmp = __fd / __NFDBITS
<http://lxr.oss.org.cn/ident?v=2.6.16;i=__NFDBITS>;
55 <http://lxr.oss.org.cn/source/include/asm-sh/posix_types.h?v=2.6.16#L55>
unsigned long __rem = __fd % __NFDBITS
<http://lxr.oss.org.cn/ident?v=2.6.16;i=__NFDBITS>;
56 <http://lxr.oss.org.cn/source/include/asm-sh/posix_types.h?v=2.6.16#L56>
__fdsetp->fds_bits[__tmp] |= (1UL<<__rem);
57 <http://lxr.oss.org.cn/source/include/asm-sh/posix_types.h?v=2.6.16#L57> }
I can't understand the usage of __rem,How to understand it? thank you.
PS:
21 <http://lxr.oss.org.cn/source/include/linux/posix_types.h?v=2.6.16#L21>
#undef __NFDBITS <http://lxr.oss.org.cn/ident?v=2.6.16;i=__NFDBITS>
22 <http://lxr.oss.org.cn/source/include/linux/posix_types.h?v=2.6.16#L22>
#define __NFDBITS <http://lxr.oss.org.cn/ident?v=2.6.16;i=__NFDBITS>
(8 * sizeof(unsigned long))
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20131103/4661a47e/attachment.html
More information about the Kernelnewbies
mailing list