터미널이 스스로 제거될 수 있는 이유는 무엇입니까?

터미널이 스스로 제거될 수 있는 이유는 무엇입니까?

스크린샷

어떻게 apt-get remove xterm진행되나요? 제거한 후에도 xterm닫히지 않고 계속해서 정상적으로 작동합니다.

xterm프로세스가 실행되는 동안 RAM에 캐시되어 있습니까 ?

답변1

좀 빠지는. 파일이 이미 프로그램에 의해 열려 있습니다. 파일을 삭제한 다음 다른 버전으로 교체해도 실행 중인 프로그램에는 영향을 미치지 않습니다. 왜냐하면 프로그램이 완료될 때까지 원본 파일이 열려 있기 때문입니다(디스크에 다시 열 수 있는 이름은 없지만). 파일에 대한 모든 핸들이 닫힐 때만 디스크의 데이터 블록이 해제됩니다. 그때까지는 열린 파일을 평소처럼 읽고 쓸 수 있습니다. 유일한 변경 사항은 이름이 제거되었기 때문에 누구도 파일을 열 수 없다는 것입니다.

프로그램의 일부가 삭제될 때 이미 RAM으로 읽혔을 수도 있지만, 여전히 삭제되고 나중에 다시 읽혀지거나 이전에 실행되지 않은 프로그램의 새 부분이 삭제된 파일에서 계속 로드될 수 있습니다.

답변2

xterm프로세스가 실행되는 동안 RAM에 캐시되어 있습니까 ?

정확히. 이는 실행 중에 충돌 없이 업데이트를 설치할 수 있는 프로세스와 유사합니다. 또한 서비스를 업데이트한 후 서비스를 다시 시작해야 하는 이유도 있습니다. 무언가가 실행되면 해당 바이너리가 메모리에 저장됩니다.

제거되거나 교체된 다른 파일("열린" 상태가 아닌)에 의존하는 경우 문제가 발생할 수 있지만 와 같이 개별적인 파일의 경우에는 xterm문제가 되지 않습니다.

답변3

이는 실제로 컴퓨터가 작동하는 방식의 특징입니다. 프로그램이 호출되면 실제로 메모리에 로드되고 거기에서 작동합니다.

파일은 실제로 같은 방식으로 작동합니다. 문제를 피하기 위해 UNIX 계열 시스템의 많은 파일은 잠금을 만듭니다.

실제 수수께끼는 Windows에서 이와 유사한 작업을 수행할 수 없는 이유입니다.

이 기능을 사용하면 실제로 시스템에서 활성화된 프로그램을 포함하여 전체 시스템을 업데이트할 수 있습니다. ;)

관련 정보