앗! 하는 사이 2일이 지나갔군요.

rust를 잠시 다시 되새김질 해보고 있습니다. 지난번 Udemy에서 강의하나 들어서 어느정도 익숙함(?) 서먹거림은 좀 사라진것 같고. 다시 여기저기 예제들 찾아보고 Cargo툴도 다시 굴려보고 하니, 조금씩 손가락이 먼저 움직여주네요. 단지 다시 빌드결과물을 보고는… Helloworld가 5MB가까이 하는걸 보고.. StaticLink였지 하면서, 이것저것 좀 찾아보니, Dynamic Link형태로 실행파일 생성은 가능하지만, 어딜 봐도 unstable ABI라는 이야기만 잔뜩 나오는 군요. 속도상 나쁠건 없다지만. 어차피 ELF이고, 리눅스 위에서 동작하는 걸로 빌드 해서, 이게 실행되려면 전체 libarary가 모두 로딩되어야 할 거라.. RAM소비도 각오는 해야할것 같고. 결국 Cache에 안 좋은 영향과 다른 앱들과의 상호작용때문에, 멀티쓰레드 환경에서는 그다지 좋을 것 같진 않은 느낌입니다. RAM이 조금만 빠듯해지면 바로 영향이 올 것 같네요. 시스템 바이너리를 교체한다면, 상당한 비용을 감수해야할 것 같습니다. 그리고 Rust로 라이브러리를 작성하는 것은 좀.. 재고할 필요도 있어 보입니다. 아직 C/C++로 몇년은 먹고 살 것 같은 느낌입니다. IOT에서는 전혀 사용할 수 없을 것 같네요.

거꾸로 생각해보면, unstable ABI를 stable하게 선점해서, dynamic system을 꾸민다면. 쓸만할 것 같기도 합니다. 나만의 Library set과 기존의 C/C++ stdlib등을 잘 엮는다면 괜찮을 것 같습니다. 그래도 몇 십kb는 나와서… 여전히 좀 그렇긴하네요.


게시됨

카테고리

작성자

태그: