![Unix 계열 운영 체제가 Windows보다 더 빨리 종료되는 이유는 무엇입니까? [폐쇄]](https://linux55.com/image/82439/Unix%20%EA%B3%84%EC%97%B4%20%EC%9A%B4%EC%98%81%20%EC%B2%B4%EC%A0%9C%EA%B0%80%20Windows%EB%B3%B4%EB%8B%A4%20%EB%8D%94%20%EB%B9%A8%EB%A6%AC%20%EC%A2%85%EB%A3%8C%EB%90%98%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%ED%8F%90%EC%87%84%5D.png)
동일한 컴퓨터에서 다양한 운영 체제를 테스트했습니다. Windows 7, 8, 8.1, OS X, Ubuntu, Linux Mint, Android x86 및 Remix 운영 체제.
모든 Unix 계열/Unix 기반 운영 체제의 공통점 중 하나는 종료 시간이 약 3초로 0에 가깝다는 것입니다.
모든 Windows 버전의 종료 시간은 꽤 길며, 30초에서 1분 정도입니다.
이에 대한 일반적인 이유가 있습니까?
답변1
여러 개의일반적인 생각나는 이것으로 충분했다일반적인 질문들:
(1) Windows 종료 중에 대부분의 서비스는 하나 이상의 종료 이벤트를 생성합니다. 때로는 서비스당 많은 이벤트가 있을 수 있습니다. 예를 들어, "NTP 서비스가 종료 중입니다.", "프린터 드라이버가 종료 신호를 수신했습니다.", "프린터 드라이버가 대기열을 플러시 중입니다.", "프린터 드라이버가 종료 중입니다." 이것들이벤트는 "객체"이며 생성 및 파괴가 느립니다., 마감 시간까지 합산됩니다.
Unix에서 종료하는 동안 대부분의 프로세스는 콘솔이나 /var/log/messages에 한 줄을 인쇄하고 종료됩니다. 훨씬 더 빨리.
(2) 종료 중에 Windows GUI는 다음을 저장합니다.많은 상태 정보(대부분이 객체로 저장됨).
Unix의 CLI에는 쉘 기록 파일을 제외하고는 저장할 것이 거의 없습니다. 대부분의 상태 정보는 간단한 텍스트 파일에 있습니다. 훨씬 더 빨리.
(3) Windows는 많은 것을 캐시할 수 있습니다.캐시를 새로 고쳐야 합니다.종료 시 파일 시스템으로.
캐싱은 더 나은 파일 시스템에서 정기적인 "fsync" 실행을 통해 UNIX에서 더 잘 처리됩니다. 훨씬 더 빨리.
(4) Windows는 각 프로세스(또는 서비스)에 많은 양의 정보를 제공할 수 있습니다.종료하는 데 더 많은 시간이 걸리고 중단된 프로세스가 더 오래 머물 수 있습니다.강제 종료까지.
Unix는 각 프로세스(또는 서비스)의 종료 시간을 단축할 수 있으며 대부분의 프로세스는 빠르게 응답할 수 있습니다. 훨씬 더 빨리.
만약 있다면특정 상황, 그러면 다음이 있을 수 있습니다.구체적인 정답그렇지 않으면 우리는 모호하고 부정확하며 지나치게 단순화된 일반화에 의존해야 할 것입니다.