ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 왜 리눅스를 사용하는가?
    ROS & Programming 2020. 12. 28. 12:49

    처음 ROS(로봇 운영 체제) 공부를 하던 당시 문득 의문이 들었다. ROS를 실행하기 위해선 버전에 맞는 Ubuntu가 필요하다고 하는데 왜 그런가? ROSUbuntu만을 지원해서 그런가?

     

    사실은 그렇지 않다.

    ROS는 분명 다양한 OS에서의 작동을 지원한다. 하지만 공식적으로 지원하는 OSUbuntu이며 Ubuntu 환경에서 ROS를 실행하는 유저가 절대적으로 많기에 일반적으로 Ubuntu 상에서 ROS를 실행시키는 것이다.

     

    그렇다면 왜 ROS는 공식적으로 지원하는 OSUbuntu를 골랐을까? 또 왜 개발자들은 Ubuntu 혹은 그 외 리눅스 커널 기반 OS들을 주로 사용하는 것일까?

    왜 리눅스를 사용하냐는 질문의 답은 리눅스의 특징으로 이어진다.

    첫째, 소스 코드가 공개되어 있는 자유 소프트웨어이며 오픈 소스 개발이 가능하다는 점

     

    무료라는 점에서 막강한 경쟁력을 챙김과 동시에 소스가 공개되어 있으므로 전 세계 개발자들이 지속적인 보완을 해 온만큼 막강한 안정성을 지니고 있다.

    또한 본인의 쓰임새에 맞추어 커널 소스를 가볍게 수정하여 사용이 가능하다는 특징이 있다.

     

     

    둘째, 다양한 하드웨어와 호환되며 저 수준의 하드웨어에서도 최적화가 용이하다는 점

     

    리눅스 커널의 소스가 오픈 개발이 이루어질 때 전세계 하드웨어 관련 기업들의 참여 역시 활발히 일어났고 이에 따라 리눅스 커널은 폭넓은 하드웨어 장치들을 지원하는 드라이버들을 포함하고 있다.

    또한 리눅스 커널은 서버 시스템으로 사용하기 위한 최소한의 설치가 가능하여 저가형 컴퓨터에도 서버 시스템 구현이 가능하며 소스 코드를 적당히 수정하여 최적화가 가능하다. 그렇기에 임베디드 및 휴대용 기기의 운영체제로 사용되고 있다.

     

     

     

    위 내용을 토대로 정리하면 리눅스

     

    어느 하드웨어에서도 최고의 성능을 발휘할 수 있으며

     

    커널 코드에 접근하여 본인이 원하는 대로 OS의 기능과 사이즈를 수정 가능하며

     

    나와 비슷한 고민을 하고 있는 사람들과 문제 공유가 가능하며

     

    위와 같은 기능을 포함한 채로 무료이다.

     

     

    진입장벽이 높은 일반 유저에게는 윈도우가 더 편하고 강력해 보일지라도

    개발자에게 있어 리눅스는 일종의 강력한 선택지라고 볼 수 있다.

     

    ps.아래 그림은 슈퍼컴퓨터로 사용되는 OS Top 500의 결과이다. 서버와 슈퍼 컴퓨터 분야에서 리눅스의 비율이 압도적임을 알 수 있다.

Designed by Tistory.