arter97
15.02.14
조회 수 9447
추천 수 15
댓글 4
다들 아기다리고기다리 시던 Lollipop용 Xposed framework.. 저는 개인적으로 킷캣에 ART 사용할 때에 Xposed를 알게되어서 사용도 안하고 쭈욱 있었는데, 이번 Lollipop용으로 릴리즈되자 한번 시도해보자고 깔아보았습니다.

뭐 예상했듯이, 프레임워크 자체는 준비되어 있을 수도 있지만 대부분의 모듈이 준비가 되어있지 않더군요.


근데 제 걱정은 이게 아닙니다, ART 런타임에 대응하기 위해 ART 런타임 파일들을 통채로 갈아 엎더군요.
/system/bin/dex2oat
/system/lib/libart.so
/system/lib/libart-compiler.so
이 세 파일이 핵심 ART 관련 파일인데 Xposed를 설치함과 동시에 rovo89님께서 미리 빌드하신 Xposed대응된 위 세 파일을 포함하여 시스템에 새로운 파일을 설치하게됩니다.

여기서 발생할 문제점..
1. 수 많은 제조사 ROM들과의 호환성/안정성 충돌
rovo89님께서 다른 뾰족한 수를 찾지 못 하는 한 이 호환성과 안정성 문제는 지속될 것 입니다.
위 세 파일들은 제조사들이 각자 커스터마이징해서 배포하게됩니다. 물론 소스는 공개하지 않고요.
당장에 삼성의 터치위즈는 /system/bin/dex2oat가 뿜는 로그캣부터가 다릅니다. 아무래도 터치위즈 자체의 통합성을 개선하고자 소스를 변경하여 탑재한거 같은데, AOSP전용으로 빌드된 Xposed의 ART 파일들이 설치되면 호환성/안정성이 크게 감소할것으로 예상됩니다.
알고보니 현재 삼성 터치위즈 롬에서 구동 자체가 안되더군요.

libart.so와 libart-compiler.so는 시스템 전체를 돌리는 런타임을 구동시키는 라이브러리다보니 사용자가 설치한 앱들을 포함하여 호환성과 안정성에 있어 매우 치명적입니다. 소스 공개되어있지도 않은 제조사 롬에 적용시키는건.. 좀 문제가 되지 않을까 싶습니다.

2. 기타 AOSP ROM들과도 마찬가지
CyanogenMod의 ART, Temasek의 ART, SlimROMs의 ART, SlimSabor의 ART(등 여러 XDA발 롬들의 ART) 모두 ART 런타임 자체가 커스텀되어있습니다. Pure AOSP, 순정 넥서스를 사용하시지 않는다면 위 1번에서 다룬 문제점들도 여러 AOSP ROM들과 호환성/안정성에 문제를 일으킬 수도 있습니다.


결론?
1번에서 언급한 "소스 비공개 제조사 롬"들은 답이 안보입니다. 5.0 -> 5.0.1 -> 5.0.2 식의 마이너 업데이트에서도 제조사 롬들의 ART 런타임은 계속 바뀌고, 갤5/갤4/노트4/노트3/엑시노스/스냅드래곤 등등으로 계속 버전이 갈릴텐데 호환성/안정성 문제는 지속될겁니다.
물론 rovo89님도 이런 경우의 수를 생각하지 못했으리라 생각하진 않습니다만...(좀 더 뾰족한 수, 히든 카드도 혹시 있을까 나름 기대를..) 제 두뇌 한계로는 제조사 롬들은 답이 안보입니다.
반대로, 소스가 공개되어있는 AOSP 롬들은 직접 개발자/빌더가 나서서 Xposed 지원을 수동추가하지 않으면 (좀 덜하겠지만) 똑같이 1번 꼴이 날거 같습니다. 좋은 소식은, rovo89님께서 Xposed 구동에 필요한 ART 변경 사항들을 공개했다는 것이죠 - https://github.com/rovo89/android_art -하지만 커스텀 롬에서 제일 큰 몫을 하고, 폰도 팔아야하고 기업화가된 Cyanogen이 서드파티 프레임워크를 지원하기 위해 소스를 수정할거로 보이진 않습니다.

그래서 현재로썬 제일 걱정되는건 삼성/LG/HTC등 커스터마이징이 많이 이루어진 자체보급용 롬과 CyanogenMod입니다.

유저들은.. 아무래도 이런 호환성/안정성 문제 겪기도 싫고 Xposed에서 딱히 득볼것도 없으시다면, 적어도 Lollipop에서는 (아직) 쓰지 않는것이 제일 현명한 답이지 않을까 싶습니다.
댓글 4
댓글 쓰기 권한이 없습니다.
최신순 목록 검색 쓰기
등록된 글이 없습니다.
1 - 2