컴파일 썸네일형 리스트형 volatile keyword "비휘발성" 이라는 의미로,컴파일러에게 임의의 최적화를 금지할때 쓰는 키워드 이다. #define LCD_RAM (*((volatile unsigned short *) 0x60020000)) /* RS = 1 */ 이런식으로 address 에 직접 access 할때,저장공간을 컴파일러가 최적화 하여, r3 나 r5 로 변경해 버리면 곤란할 것이다. 또한, HW 에 의해서 지속적으로 변경되는 데이터를 담고 있다면,이또한 read 할때마다, 값이 update 되어야 하는데컴파일러 최적화는 이를 방해하는 요소가 된다. 이러한 것들을 피할때 volatile keyword 를 사용한다. 단, 추가 첨언을 하자면..The rule of thumb in Linux kernel programming is that if.. 더보기 이전 1 다음