우리는 여러 도구를 사용하여 서버(Win2k)를 실행합니다. 워크스테이션(XP)에는 모두 해당 폴더를 포함하도록 PATH가 설정되어 있습니다.
워크스테이션의 DOS 상자에서 도구(예: grep
)를 실행할 때 도구가 실행되기 전에 때로는 긴 지연(최대 1분)이 발생할 수 있습니다. 지연 후에는 모든 것이 정상적으로 진행됩니다. 후속 실행에는 다른 DOS 상자에서 실행하더라도 지연이 없습니다.
어떤 아이디어가 있나요?
* 자세한 내용은*
이 시나리오에서는 항상 지연이 발생합니다. 우리는 서버의 특정 폴더에 있는 도구를 작업하고 있습니다. 도구는 도구가 빌드된 폴더에 있는 DOS 상자의 한 워크스테이션에서 편집 및 컴파일된 다음 실행되며 지연이 항상 존재합니다. 다음 실행은 괜찮습니다. 따라서 EXE를 재생성하면 지연이 발생합니다.
답변1
Windows는 원하는 명령이 해당 폴더에 있는지 확인하기 위해 서버에 로그인하고 있습니다. 처음 이후에는 이미 로그인되어 있습니다. 매일 서버의 문서와 폴더를 열 때 동일한 문제가 발생합니다.
로그인 중에 다음 명령을 실행하면 (Windows에서) 속도를 높일 수 있습니다.
Net Use \\ServerName
명령을 처리하는 데 몇 분 정도 걸리지만 사용자가 눈치채지 못하는 백그라운드 작업으로 발생할 수도 있습니다. 그러나 이로 인해 귀하의 경우 "연결이 너무 많음" 문제가 발생할지 여부는 알 수 없습니다.
답변2
grep
Win32 명령이 아니라 Unix 명령이므로 이전 버전의 Windows에 있는 Unix 하위 시스템을 호출했을 수 있습니다.
초기 지연을 설명할 수 있는 이러한 Unix 명령을 지원하려면 특수 시스템 프로세스를 시작해야 합니다. 프로세스 이름은 기억나지 않지만 프로세스 탐색기 같은 것을 사용하면 시작되는 것을 볼 수 있습니다.
아마도 이TechNet 시리즈도움이 될 수 있습니다. 하위 시스템에 대한 자세한 내용은 "Windows 내부" 설명서에서 확인할 수 있습니다.
답변3
경로에 시간 초과된 네트워크 위치가 있을 수 있습니다. DOS 또는 시작 메뉴의 "실행" 옵션에서 프로그램을 실행하려고 할 때 실행 파일이나 스크립트/배치 파일이 처음에 발견되지 않은 경우 현재 작업 디렉터리를 검색하면 PATH에 나열된 각 디렉터리도 검색됩니다.
DOS 창에 "PATH"를 입력하면 C: 드라이브 외부에 있는 항목이 목록에 있는지 확인할 수 있습니다. 그렇지 않다면 다음 용의자는 다음과 같습니다.
매우 큰 프로그램을 처음 로드하는 경우에도 문제가 될 수 있습니다(이후 사용은 캐시에서 이루어지기 때문). 사용 중인 "grep" 도구에 대한 링크가 있습니까? 소규모 독립 실행형 프로그램이라면 문제가 되지 않습니다.
느린 바이러스 백신 소프트웨어(매우 드물음)
디스크 장애가 발생하기 시작합니다(최대한 빨리 전체 백업을 받으세요).
파일 시스템의 과도한 조각화(시작 메뉴 -> 프로그램 -> 보조프로그램 -> 시스템 도구 -> 디스크 조각 모음에서 찾을 수 있는 디스크 조각 모음을 실행하면 쉽게 해결됨)