11G下
11G下:
$ ls -l /proc/6229/fd
total 15
lrwx------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 0 -> /dev/null
lrwx------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 1 -> /dev/null
lrwx------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 10 -> socket:[84307620]
lrwx------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 11 -> socket:[84307622]
lrwx------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 12 -> socket:[84307624]
lrwx------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 13 -> socket:[84307633]
lrwx------ 1 oracle11g oinstall 64 2013-08-16 16:05:41 14 -> socket:[84307750]
lrwx------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 2 -> /dev/null
lr-x------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 3 -> /u01/app/oracle11g/product/11.2.0/db_2/rdbms/mesg/diaus.msb
lr-x------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 4 -> /proc/6229/fd
lr-x------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 5 -> /u01/app/oracle11g/product/11.2.0/db_2/network/mesg/nlus.msb
lr-x------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 6 -> pipe:[84307604]
lr-x------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 7 -> /u01/app/oracle11g/product/11.2.0/db_2/network/mesg/tnsus.msb
lrwx------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 8 -> socket:[84307617]
l-wx------ 1 oracle11g oinstall 64 2013-08-16 16:04:00 9 -> pipe:[84307605]
$ strace -p 6229
Process 6229 attached - interrupt to quit
poll([{fd=8, events=POLLIN|POLLRDNORM}, {fd=11, events=POLLIN|POLLRDNORM}, {fd=12, events=POLLIN|POLLRDNORM}, {fd=14, events=POLLIN|POLLRDNORM, revents=POLLIN|POLLRDNORM}], 4, -1) = 1
gettimeofday({1376640411, 662046}, NULL) = 0
read(14, "\2F\0\0\6\0\0\0\0\0\0\0\2
write(14, "\1:\0\0\6\0\0\0\0\0\0\0\0010(\1\0\200\7\0\0\0\0\0\0\0\0"..., 314) = 314
lstat("/u01/app/oracle11g/diag/tnslsnr/hisdg/listener/alert/log.xml", {st_mode=S_IFREG|0640, st_size=3198192, ...}) = 0
stat("/u01/app/oracle11g/diag/tnslsnr/hisdg/listener/alert/log.xml", {st_mode=S_IFREG|0640, st_size=3198192, ...}) = 0
gettimeofday({1376640411, 663228}, NULL) = 0
lstat("/u01/app/oracle11g/diag/tnslsnr/hisdg/listener/alert/log.xml", {st_mode=S_IFREG|0640, st_size=3198192, ...}) = 0
open("/u01/app/oracle11g/diag/tnslsnr/hisdg/listener/alert/log.xml", O_WRONLY|O_APPEND|O_CREAT, 0660) = 15
fcntl(15, F_SETFD, FD_CLOEXEC) = 0
write(15, "
close(15) = 0
stat("/u01/app/oracle11g/diag/tnslsnr/hisdg/listener/alert/log.xml", {st_mode=S_IFREG|0640, st_size=3198410, ...}) = 0
times({tms_utime=2, tms_stime=3, tms_cutime=0, tms_cstime=0}) = 3731738185
lstat("/u01/app/oracle11g/diag/tnslsnr/hisdg/listener/trace/listener.log", {st_mode=S_IFREG|0640, st_size=8343683, ...}) = 0
open("/u01/app/oracle11g/diag/tnslsnr/hisdg/listener/trace/listener.log", O_WRONLY|O_APPEND|O_CREAT, 0660) = 15
fcntl(15, F_SETFD, FD_CLOEXEC) = 0
write(15, "16-AUG-2013 16:06:51 * service_u"..., 49) = 49
close(15) = 0
poll([{fd=8, events=POLLIN|POLLRDNORM}, {fd=11, events=POLLIN|POLLRDNORM}, {fd=12, events=POLLIN|POLLRDNORM}, {fd=14, events=POLLIN|POLLOUT|POLLRDNORM, revents=POLLOUT}], 4, -1) = 1
gettimeofday({1376640411, 664984}, NULL) = 0
poll(
Process 6229 detached
使用的是fcntl函数。