모든글
인기글
정치인기글
유머게시판
자유게시판
정치/시사
라이프
19이상만
EastSideStory
2024.05.02 22:51
125
8
https://itssa.co.kr/13685678

심지어 아이폰 1세대 때도 있던 문제...

 

근데 이게 아이폰의 문제가 아니라

외부 알람클럭을 사용하는 대부분의 cpu들이 안고 있는 잠재적인 문제인데

유독 아이폰은 이 문제 외에도 소프트웨어적으로 폰이 깨어나는게 씹히는 경우가 좀 잦은 편이랄까...

 

핸드폰의 알람의 동작구조를 보면

보통 CPU가 있고 알람을 담당하는 쉽게 말해 시계칩이 함께 들어있습니다.

이 회로는 메인 CPU가 동작하는 것과 별개로 독립적으로 계속 돌고 있음...

CPU가 사용하는 저장소인 낸드 메모리는

그 컨트롤러를 CPU가 관장하고 OS 가 그걸 사용하기 때문에

알람 회로를 위한 스토리지가 따로 붙어있는 경우도 있습니다. (한정적 용량의 EEPROM 같은게 전통적으로 많이쓰임)

 

이렇게 CPU에 알람회로가 따로 구현되는 이유는

CPU가 슬립모드나 아예 꺼져있을 때도 알람이 동작하게 하기 위해서인데,

십몇년 전 EU mandatory (EU에 수출하려면 지켜야할 스펙)중 하나로

폰이 꺼져있어도

알람이 동작해야한다는 요구사항을 만족하려면

CPU와 별도로 동작하는 알람회로가 있어야 했음...

 

OS에서 이 알람회로에 알람 시간을 설정하면

알람 회로 전용의 저장소에 알람이 저장돼 있다가

알람 시간이 되면

CPU한테 인터럽트를 띄워줍니다.

 

여기서 인터럽트는 쉽게 말하면 신호,

더 직관적으로 말하면 툭 쳐주는거예요.

CPU 입장에서는 EXTINT 즉 외부 인터럽트로 등록하고

그 신호가 뜨면 정해진 동작을 하는것임...

 

근데 가끔 툭 쳐주는게 CPU 입장에서 신호로 인식할 정도로 레벨이 높지 않거나,

클럭이 씹히거나

알람 회로가 오동작할수도 있음...

 

가장 흔한게 CPU가 인터럽트를 씹는 경우임...

 

근데 아이폰은 예전부터 유난히 알람 뿐 아니라

소프트웨어가 화면을 켜게 만드는 그런 인터럽트도 씹히는 경우를 아주 가끔 경험하는 사람들이 있을정도로

전력 관리를 빡세게 해서인지 잘 씹히는 경우가 있었습니다.

 

찾아보시면 한 10년 전에도 알람 안떠서 단체 행동 한자는 미국 애플 포럼의 사용자들이 종종 있었음....

 

아이폰 알람 이슈는

일종의 well-known issue 로

불특정 다수가 경험을 하지만

재현을 시킬순 없어서 항상 묻히는 그런 문제였던거로...

 

 

이문제가 아이폰만 있는 것 같지만

사실...아주 오래 전 부터 CPU에 알람 회로를 따로 붙여 쓰는 장치들은

다 안고 있던 문제였습니다만....

 

아이폰을 제일 많이 쓰니까....

말이 나오는 듯

 

 

전 부터 오창석 억울하겠다 싶었는데

쌍욕 먹을때 쫌 불쌍했음 ㅋㅋㅋ

 

댓글 2

댓글쓰기
  • 2024.05.02 22:56
    베스트

    저도 알람 안울릴때가 있어서 창슥이 불쌍하다 생각함

    그나저나 글은 정독 했는데,,, 외계어다 ㅠㅠ

  • truman 작성자
    2024.05.02 23:02
    베스트
    @꽁~아

    엄마가 등짝 스매싱을 해야 깨는 아들이

    어느날 등짝 스매싱이 너무 달콤해서 못깨는 경우가 가끔 있다고 보면 됩니다. ㅋㅋㅋ

    여기서 엄마=알람클럭, 아들=CPU