잡담 Allwinner의 SDK구성에 대한 이야기..
2013.08.14 01:21
아마도 많은 분들이 이부분에 대해서 궁금해 하실 분들이 계실 겁니다.
대체 Allwinner에서는 SDK 관리는 어떻게 하고 있냐고 말이죠.
Allwinner에서의 SDK는 이렇습니다.
일단 싱글급에서 불리는 SDK의 경우 Main SDK라고 불리는 SDK가 있고
이 SDK는 기본적으로 SDK 1.6으로 표현됩니다.
거기서 Mini-SDK라는 이름으로 각 SDK를 관리하는데요.
Mini-SDK는 작년에 흔히 알고 있었던
SDK 1.4rc1, 1.4rc3, 1.5 그리고 1.6까지 올려져 있습니다.
물론 Mini-SDK를 1.4rc1을 쓴다고 해서 OS 4.1.2까지 못올리는것도 아니고
1.5 혹은 1.6을 쓴다고 해서 4.1.2로 꼭 올리는건 아니지만
Mini-SDK 1.6으로 올라가면 갈수록 안정화 되는 건 사실입니다.
Allwinner A31의 경우는 조금 특이한데요.
(Allwinner A31s도 마찬가지고)
Allwinner에서 이야기한 SDK 1.XX, 2.XX 혹은 3.XX는
mini-SDK가 아니라
Main SDK가 1.6으로 그리고 Mini-SDK도 1.6으로 되있으나
SDK 1.XX 및 2.XX Mini-SDK의 Sub-SDK개념으로 보셔야 합니다
다만 sub-SDK의 1.XX와 sub-SDK 2.XX의 경우
기본적으로 쓰는 골격은 비슷하나 세부 사항은 조금 다른편으로
어떻게 보면 펌웨어 peripheral structure가 틀리다라고 보셔도 무방할겁니다.
그럼 Allwinner 쿼드의 SDK 3.XX는 어떤것일까요??
SDK 3.XX는 Main SDK가 1.7이며 Mini SDK 또한 1.7이고 OS 4.2이상을 위해
만들어진 SDK라고 보시면 될겁니다.
즉 엄밀히 말하면 Sub SDK 3.XX는 Main SDK 1.7 포함된 Mini SDK 1.7의
Sub SDK 1.XX라고 명명해야 되나
명칭의 혼돈을 피하기 위해서
이런식으로 명명을 한듯 합니다.
한가지 더 하자면 Main SDK 1.6과 Main SDK 1.7과의 차이는 상당히
있는 편입니다.
심지어 몇몇 기본프로그램의 경우 상위 호환 자체를 막아버리는
상황도 있다라고 보시면 될겁니다.(Manifest.xml에서 아예 SDK 제한을 둬버리는)
SDK 1.7의 경우 사실 AA31을 위해서만 만든것이 아니라
싱글코어도 호환이 되게 만들긴 했습니다만
배터리 관련 부분에 문제가 있어서 어쩌면
업그레이드를 못하는 지도 모르겠습니다.
실제로도 SDK 1.6의 베타 버전인 OS 4.1.2로 올린
AA13기종에서 배터리 광탈을 경험해봤고
거기에 OS 4.0.4로 올린게 안정적이니까요.
어찌되었던 이정도라면 Allwinner의 복잡한
SDK구성에 대해서 조금은 이해를 하셨으리라 봅니다.