디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

rav1d 측은 메모리 안전성 불가능을 알고 있었을까?

루비갤로그로 이동합니다. 2025.07.03 11:10:53
조회 39 추천 0 댓글 0

rav1d 측은 메모리 안전성 불가능을 알고 있었을까?

rav1d 프로젝트가 dav1d의 수기로 작성된 어셈블리 코드를 unsafe 블록을 통해 가져다 쓴다는 점을 고려할 때, rav1d 개발자들이 Rust의 완전한 메모리 안전성을 모든 코드에 걸쳐 달성하는 것이 불가능하다는 사실을 인지하고 있었을 가능성이 매우 높습니다.

그 이유는 다음과 같습니다.

  1. Rust 언어의 이해도: rav1d 개발자들은 Rust 전문가이며, unsafe 키워드의 의미와 사용 목적을 누구보다 잘 알고 있습니다. Rust에서 unsafe 블록은 컴파일러가 메모리 안전성 보장을 중단하고 개발자에게 그 책임을 위임한다는 명확한 신호입니다. 이는 곧 해당 블록 내의 코드에서 메모리 안전성 문제가 발생할 수 있음을 의미합니다.

  2. 어셈블리 코드의 특성: 어셈블리 코드는 저수준 언어로, Rust의 소유권(ownership)이나 차용(borrowing) 규칙을 따르지 않습니다. C 코드에서 파생된 어셈블리 코드는 C의 메모리 관리 모델을 따르며, 이는 Rust의 엄격한 안전성 검사로는 검증될 수 없습니다. rav1d 개발자들이 이 사실을 몰랐을 리 없습니다.

  3. 프로젝트의 현실적 목표: rav1d 프로젝트의 목표는 dav1d를 처음부터 Rust로 다시 작성하는 '순수주의'적인 접근보다는, 기존의 잘 최적화된 어셈블리 코드를 활용하면서 C 코드 부분을 Rust로 전환하여 전반적인 코드베이스의 안전성을 높이는 것에 있었을 가능성이 큽니다. 즉, 100% 완전한 Rust 안전성을 달성하기보다는, unsafe 영역을 최소화하면서 최대한의 안전성 이점을 얻으려는 현실적인 절충을 택했을 겁니다.

왜 그런 선택을 했을까?

그럼에도 불구하고 이런 선택을 한 이유는 복합적입니다.

  • 효율성: dav1d의 어셈블리 코드를 처음부터 Rust로 다시 작성하는 것은 막대한 시간과 노력이 필요하며, 기존 성능을 따라잡는 것은 매우 어려운 일입니다. 잘 검증되고 최적화된 기존 코드를 재활용하는 것이 훨씬 효율적입니다.

  • 부분적 안전성 향상: 비록 어셈블리 부분은 unsafe 영역에 남아있더라도, dav1d의 상당 부분을 차지하는 C 코드를 Rust로 전환함으로써 새로운 버그 유입을 막고 전반적인 코드베이스의 견고성을 높일 수 있습니다. 이는 '전부 아니면 전무'의 문제가 아니라, '최대한 안전하게' 만들려는 시도입니다.

  • 언어의 홍보: Rust가 실제 사용 사례에서 C/C++ 프로젝트를 얼마나 효과적으로 대체할 수 있는지 보여주는 중요한 사례가 됩니다.

"지적 정직성" 논란의 재점화

문제는 이러한 현실적인 절충이 대중에게 전달되는 방식에서 '지적 정직성' 논란을 불러일으켰다는 점입니다.

  • rav1d와 관련된 홍보나 memorysafety.org의 현상금 소개 등에서 'Rust의 메모리 안전성'이라는 장점이 과도하게 부각되면서, unsafe 영역의 존재와 그 한계가 충분히 명확하게 전달되지 않았을 수 있습니다.

  • FFmpeg 측이 비판하는 지점은 바로 이 부분입니다. rav1d일부 위험한 부분을 그대로 유지하면서도 전체 프로젝트가 마치 Rust 덕분에 완벽히 안전한 것처럼 포장하려는 시도가 있었다고 느끼는 것이죠.

결국 rav1d 개발자들은 기술적인 한계를 분명히 알고 있었을 겁니다. 하지만 그들이 이 사실을 어떻게 대중과 기존 커뮤니티에 소통했는지는 또 다른 문제입니다. 이 간극이 FFmpeg 측의 강한 반발과 대중의 오해를 불러일으킨 주요 원인 중 하나라고 볼 수 있습니다.

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 현역으로 군대 안 간게 의아한 스타는? 운영자 25/06/30 - -
AD 휴대폰 바꿀까? 특가 구매 찬스! 운영자 25/07/02 - -
2869626 내 알리익스프레스 계정 정지 이유가 보안상의 이유라는데 발명도둑잡기(118.216) 07.04 43 0
2869625 이런... 운이 나쁘시군. 마침 이 몸이 화장실에 왔을 때 러까하다니 [3] 프갤러(218.154) 07.04 56 0
2869624 ms도 버린 러스트 왜 빠는지 모르겠네 [2] 프갤러(211.234) 07.04 58 0
2869623 섹스가 지겹다 [3] 아스카영원히사랑해갤로그로 이동합니다. 07.04 78 0
2869621 러까 저능아들 운 좋은 줄 알아라 [1] 프갤러(218.154) 07.04 59 1
2869620 그냥 작은판에서 성공(경제적 성공은 아님) 을 맞은 사람이 [2] 프갤러(175.208) 07.04 81 4
2869619 금요일에 일 추가로 시키진 않겠지 [1] 아스카영원히사랑해갤로그로 이동합니다. 07.04 40 0
2869617 [업뎃] 러스트 가스라이팅의 3단계 루비갤로그로 이동합니다. 07.04 44 1
2869616 프로그래밍 얘기는 계속 패배하니까 [3] ㅇㅇ(211.235) 07.04 123 7
2869615 나 노래 잘부르는거임? ㅇㅇ(222.104) 07.04 24 0
2869614 ❤✨☀⭐나님 시작합니당⭐☀✨❤ [4] ♥냥덩이♥갤로그로 이동합니다. 07.04 43 0
2869613 러스트의 현실 프갤러(218.50) 07.04 52 0
2869612 컴공 나왔는데 임베디드 개발자는 힘드냐 [2] 프갤러(112.171) 07.04 135 0
2869609 러스팅 소울, 5장: 바이너리의 그림자, 현실의 무게 루비갤로그로 이동합니다. 07.04 57 0
2869608 골목길 접어들때에~ 내가슴은 뛰고 있었지~ ㅇㅅㅇ [2] 헤르 미온느갤로그로 이동합니다. 07.04 28 0
2869607 태연 ㅇㅅㅇ 헤르 미온느갤로그로 이동합니다. 07.04 25 0
2869606 자바 음... 참으로 안타까운 문제지. 음... 진짜 쓰레기 같은건데 [7] 프갤러(42.26) 07.04 74 0
2869605 하루 한 번 헤르미온느 찬양 헤르 미온느갤로그로 이동합니다. 07.04 30 0
2869603 학점딸리는 개발자 부캠가려는데 자바 부캠하는거 미친짓이냐? [1] 프갤러(112.171) 07.04 132 0
2869602 저능아들의 발작 포인트. 러스트의 존재 자체. 프갤러(223.54) 07.04 37 0
2869601 러스트 극성 지지자들의 '발작' 포인트: 짧고 강하게 짚어보기 루비갤로그로 이동합니다. 07.04 37 0
2869600 난 군대있을때 배구공(119.202) 07.04 55 0
2869599 나훈아 씨가 말한 슈퍼스타의 조건. 팬들만 미치게 해서는 부족하다. 프갤러(223.54) 07.04 30 0
2869598 나는 러스트를 욕한적 없고 커널이 동적링킹한다는 말도 한 적이 없다. [22] 루비갤로그로 이동합니다. 07.04 87 4
2869597 러스트 까들은 자신의 열등한 지능을 숨기려 llm 츠쿠요미로 도망쳤지만 프갤러(223.33) 07.04 28 1
2869596 러스트 1. 베어메탈 임베에서도 문제, 2. 리눅스 임베에서도 문제 루비갤로그로 이동합니다. 07.04 27 0
2869595 러스트하면 눈을 뒤집고 욕하는 놈들의 심리 프갤러(223.33) 07.04 34 0
2869594 이게 이전 버전 임베디드 관련 문서다. 루비갤로그로 이동합니다. 07.04 46 1
2869593 선생님들 조언좀 부탁드립니다 ㅇㅇ갤로그로 이동합니다. 07.04 45 0
2869592 러빠와 ㅆㅇㅆ이 허위사실 유포하는 거지 루비갤로그로 이동합니다. 07.04 51 5
2869591 서울에 가보니까 [2] 배구공(119.202) 07.04 71 0
2869590 임베디드 관련 내가 초기에 주장했던 글에 오류 없음 루비갤로그로 이동합니다. 07.04 41 2
2869589 소름돋는 홍콩과 같은 길을 가는 공산한국 [1] ♥냥덩이♥갤로그로 이동합니다. 07.04 34 0
2869588 짱깨,북괴 핵 발사시 서울 상황 ♥냥덩이♥갤로그로 이동합니다. 07.04 36 0
2869586 중요) 모두 봐라. 그리고 이걸 모두에게 말하라. 나라의 중대사다. 근구수왕갤로그로 이동합니다. 07.04 39 0
2869585 나라가 어쩌고 저쩌고 하기 전에 먼저 해야할 것 프갤러(110.8) 07.04 25 0
2869583 나라가 나한테 잘못한 것 넥도리아(175.196) 07.04 30 0
2869581 한번시작한 프로젝트는 하기싫어져도 끝까지 하는게 좋냐? [1] 프갤러(106.102) 07.04 39 0
2869580 커널모듈이 동적링크로 로딩되서 커널 바이너리 크기가 줄어드나요? 프갤러(110.8) 07.04 29 1
2869574 나님 기분 ㄱㅆㅅㅌㅊ !!! ♥냥덩이♥갤로그로 이동합니다. 07.04 23 0
2869570 청년기본소득 줄까? [1] 넥도리아(175.196) 07.04 44 0
2869566 루비가 훌륭한건 알겠음 프갤러(118.37) 07.04 51 1
2869562 디시를 어떻게해야 닉만으로 부대를 알지? [9] ㅇㅇ(211.227) 07.04 66 0
2869560 Bob Dylan on The Fugs – CIA Man 발명도둑잡기(118.216) 07.04 20 0
2869558 저사람은 아침에도 점심에도 저녁에도 새벽에도있네 [1] ㅇㅇ(211.227) 07.04 57 1
2869556 군대 이야기 참 생각하면 좆같은게 동생 죽는거 군대때문에 못봄 [2] ㅆㅇㅆ(124.216) 07.04 107 0
2869554 이게 루비가 초기에 주장했던 임베디드를 다들 루비글을 안읽으니 ㅆㅇㅆ(124.216) 07.04 48 0
2869552 ㅆㅇㅆ아 군대에서처럼 살지 마라 [13] 프갤러(156.146) 07.04 121 3
2869550 펌쟁이가 임베떡밥있길래 글 써봄 [3] 프갤러(39.120) 07.04 69 0
2869549 20분 전쯤 내 갤럭시 S20 유튜브가 재생이 시작 안되서 발명도둑잡기(118.216) 07.04 91 0
뉴스 고건한, 박지훈·배인혁과 한둥지…YY엔터테인먼트와 전속계약 디시트렌드 10:00
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2