Not 100% sure what my question is here, but I'm curious. A little while back I was running PHP-4.0.6 on Solaris8 using apache and wanted to get an idea of expect performance and configuration issues ( was mostly curious about my apache configuration to make sure the .htaccess calls were removed ). I ran a perl script to hit the following script: <? print "Test"; ?> I trussed an apache/php httpd process and was a little suprised by the results. There is a string of open/fstat/getdents64/close calls that are the majority of the system activity for the above simple example and I'm assuming is the majority of the I/O wait under load. I think I traced it down to a call to expand_filepath in php_fopen_and_set_opened_path. Not sure why this is done or what it is for. Could someone please enlighten me? It is my belief that if it could be minimized that it could significantly reduce system load for simple php scripts. Thanks. Hope this makes sense. What follows is the truss for a single HTTP Get to the above simple script: umask(077) = 022 umask(022) = 077 setitimer(ITIMER_PROF, 0xFFBEF520, 0x00000000) = 0 sigaction(SIGPROF, 0xFFBEF3F0, 0xFFBEF470) = 0 sigprocmask(SIG_UNBLOCK, 0xFFBEF510, 0x00000000) = 0 pathconf(".", _PC_PATH_MAX) = 1024 stat64("./", 0xFFBEE408) = 0 stat64("/", 0xFFBEE370) = 0 open64("./../", O_RDONLY|O_NDELAY) = 5 fcntl(5, F_SETFD, 0x00000001) = 0 fstat64(5, 0xFFBECD90) = 0 fstat64(5, 0xFFBEE408) = 0 close(5) = 0 chdir("/local/home/usr/local/apache/htdocs") = 0 open("/local/home/usr/local/apache/htdocs/f.php", O_RDONLY) = 5 pathconf(".", _PC_PATH_MAX) = 1024 stat64("./", 0xFFBED730) = 0 stat64("/", 0xFFBED698) = 0 open64("./../", O_RDONLY|O_NDELAY) = 6 fcntl(6, F_SETFD, 0x00000001) = 0 fstat64(6, 0xFFBECCB8) = 0 fstat64(6, 0xFFBED730) = 0 getdents64(6, 0x0016A538, 1048) = 320 close(6) = 0 open64("./../../", O_RDONLY|O_NDELAY) = 6 fcntl(6, F_SETFD, 0x00000001) = 0 fstat64(6, 0xFFBECCB8) = 0 fstat64(6, 0xFFBED730) = 0 getdents64(6, 0x0016A538, 1048) = 144 close(6) = 0 open64("./../../../", O_RDONLY|O_NDELAY) = 6 fcntl(6, F_SETFD, 0x00000001) = 0 fstat64(6, 0xFFBECCB8) = 0 fstat64(6, 0xFFBED730) = 0 getdents64(6, 0x0016A538, 1048) = 648 close(6) = 0 open64("./../../../../", O_RDONLY|O_NDELAY) = 6 fcntl(6, F_SETFD, 0x00000001) = 0 fstat64(6, 0xFFBECCB8) = 0 fstat64(6, 0xFFBED730) = 0 getdents64(6, 0x0016A538, 1048) = 208 close(6) = 0 open64("./../../../../../", O_RDONLY|O_NDELAY) = 6 fcntl(6, F_SETFD, 0x00000001) = 0 fstat64(6, 0xFFBECCB8) = 0 fstat64(6, 0xFFBED730) = 0 getdents64(6, 0x0016A538, 1048) = 432 close(6) = 0 open64("./../../../../../../", O_RDONLY|O_NDELAY) = 6 fcntl(6, F_SETFD, 0x00000001) = 0 fstat64(6, 0xFFBECCB8) = 0 fstat64(6, 0xFFBED730) = 0 open("/etc/mnttab", O_RDONLY) = 7 fstat64(7, 0xFFBEC678) = 0 ioctl(7, TCGETA, 0xFFBEC604) Err#22 EINVAL read(7, " / d e v / d s k / c 0 t".., 512) = 455 ioctl(7, (('m'<<8)|1), 0xFF238BE0) = 0 ioctl(7, (('m'<<8)|2), 0x000BEA18) = 0 lstat64("/local", 0xFFBEC898) = 0 lstat64("/local/..", 0xFFBEC898) = 0 llseek(7, 0, SEEK_CUR) = 455 close(7) = 0 close(6) = 0 resolvepath("/local/home/usr/local/apache/htdocs/f.php", "/local/home/usr/local/apache/htdocs/f.php", 1024) = 46 ioctl(5, TCGETA, 0xFFBEE224) Err#25 ENOTTY fstat64(5, 0xFFBECAB8) = 0 ioctl(5, TCGETA, 0xFFBECA44) Err#25 ENOTTY read(5, " < ? p r i n t " T e".., 8192) = 339 read(5, 0x001927B4, 8192) = 0 ioctl(5, TCGETA, 0xFFBECB1C) Err#25 ENOTTY llseek(5, 0, SEEK_CUR) = 339 close(5) = 0 chdir("/") = 0 umask(022) -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]