작성자 | 개념의극한 | ||
---|---|---|---|
작성일 | 2016-08-10 22:14:25 KST | 조회 | 217 |
첨부 |
|
||
제목 |
컴퓨터가 가끔 죽어버리는데
|
이게 원인이 주로 크롬쓰다가 샥웨이브 플래쉬가 먹어버리는 거
근데 이해가 안되는게 OS가 죽어버리려면
유저 스레드가 시스템 콜이라던지 해서 커널 스레드를 부르고 거기서 먹어버려야 함
그 이유가 컴퓨터가 죽는게 한 프로세스가 CPU를 쓰고 있는데 이게 다음 프로세스로 넘겨야 하는데
I/O 입력을 기다린다던지 무한 컴퓨팅 혹은 무한 대기를 해버리면 죽음
근데 OS는 프로세스들을 일정 시간만(아주 짧게 밀리초 단위) CPU를 쓰게 하고 계속 돌리는데
돌리기 때문에 무한 대기로 죽을 이유가 없음
그렇다면 커널 스레드, 즉 OS를 통제하는 선에서 문제가 생긴건데
아니 플래쉬가 무슨 시스템 콜을 하기에 커널 스레드가 죽어버리는 건가
죽어버리는 다른 방법으로는 리소스 1을 써야 하는데 다른 놈이 쓰고 있어서 이미 잡은 리소스 2를 잡고 대기하는데
알고보니 그 다른 놈이 리소스 2를 써야 해서 리소스 1을 잡고 대기하는 중이라 영원히 끝나지 않는 대기가 존재하는데
이게 윈도우에서 가능한가... 모르겠다
이 글 왜 썼나.... 모르겠다
어머니와 아들이 대화하는 짤이나 올려야겠다
© PlayXP Inc. All Rights Reserved.