Processor에 MMU가 있어야 리눅스를 사용할 수 있나요?

rain의 이미지

책 보다가 궁금한 부분이 있어 질문올립니다.
아래와 같은 구문에 대해 보충 설명해주실 수 있는 분~
전 아래와 같은 구문을 보구 MMU가 memory management unit이라는 것 이외에는 머리 속에 떠오르는게 없네요. ㅡㅡa

MMU가 있다는 것은 ARM720T에서 리눅스나 마이크로소프트 임베디드 운영체제를 사용할 수 있음을 의미한다. 
- ARM Developer's Guide, 45p - 
segfault의 이미지

MMU 없는 하드웨어를 위한 리눅스 커널이 있을겁니다.

저도 정확히는 모르겠네요.

cinsk의 이미지

MMU 없는 CPU를 위한 linux는 원래 uClinux라는 이름으로 개발되어져 왔습니다. 현재 이 계통의 patch는 정식 linux kernel에 계속 merge되고 있습니다.

kite7의 이미지

http://opensrc.sec.samsung.com/

이런것도 있더군요.... 성능은 아무래도 느릴것같은데.
우리나라 분이 주도 한다고 했던거 같기도하고...

cinsk의 이미지

kite7 wrote:
http://opensrc.sec.samsung.com/
이런것도 있더군요....

제 옆자리에 근무하는 최혁승 선임 연구원이 담당합니다. :wink:
정말 대단한 분이죠.

Quote:
성능은 아무래도 느릴것같은데.

아닙니다. 모든 장단점을 가릴 수는 없지만, 단순히 빠르기만 보면, virtual-physical mapping이 간단하기 때문에, 오히려 context switching에 드는 overhead가 conventional linux보다 적습니다. 따라서 같은 CPU, 같은 memory 등의 조건에서는 MMUless linux가 더 빠릅니다.

Context Switching and IPC Performance Comparison between uClinux and Linux on the ARM9 based Processor을 보시면 좀 더 자세한 내용을 보실 수 있습니다.