Exynos5420에 ARM용 리눅스 우분투 서버 탑재 세미나

rgbi3307의 이미지


일시: 2015년 10월 9일(금,한글날) 오후3시~4시(2시간)
장소: 독산동 현대지식산업센터 A동 2611호 커널연구회 강의실
약도: http://kernel.bz/projects/kernel-bz/download/note/7

커널연구회는 Exynos5420(ARM Cortex-A7/A15, Octa Core) 보드에 리눅스 커널 4.x을 포팅하고 ARM용 리눅스 우분투 서버를 탑재했다. Exynos5420은 AP내부에 DRAM 2GB가 내장되어 있고, ARM Big.Little 구조를 채택하여 1.7GHz의 속도를 내는 Cortex-A15 Core 4개(Big 구조)와 1.0GHz의 속도를 내는 Cortex-A7 Core 4개(Little 구조), 합해서 8개의 Core가 리눅스 커널에 의해서 스케쥴링 된다. 간단한 I/O들은 Cortex-A7이 처리하고 고성능을 내야하는 멀티미디어 데이터처리는 Cortex-A15가 실행되도록, 최신 리눅스 커널(linux-4.x)도 이러한 구조를 지원하는 방향으로 지속적으로 버전업 되고 있다. 이정도 하드웨어 사양이면 웬만한 PC급 이상의 성능을 발휘한다. 더구나 손바닥 크기만한 ARM 보드에서 이정도 성능을 내면서도 가격까지 저렴하다. PC에 비하면 3분의1 가격대이다. 그럼에도 불구하고 Exynos5420의 이러한 성능을 우리는 100% 활용하지 못하고 있었다. 물론 제조사에서 풍부한 기술적 공유가 미흡한 점도 있었지만, 커널연구회는 이러한 환경에서도 꾸준히 연구개발하여 Exynos5420 보드에 리눅스 커널 4.x 버전을 포팅하고 ARM용 리눅스 우분투 서버를 탑재했다. 이제 ARM 임베디드 개발환경에 날개를 달았다.

ARM보드에 리눅스 우분투 패키지 설치 도구인 apt-get(Advanced Packaging Tool)이 설치 되었으므로, ARM 보드에 개발환경 구축이 편리해 졌다. ARM용 gcc 네이티브 컴파일러도 보드에서 직접 실행된다. 개발 환경 구축 및 어플리케이션 개발에 날개를 단 셈이다. ARM보드에 리눅스 우분투가 포팅되고 apt-get이 설치 되어 있음으로 인해서, PC에서 개발환경을 구축하여 각종 개발용 패키지들의 소스를 크로스 컴파일하지 않아도 된다. 지난 몇 년간 PC환경에서 크로스 컴파일해온 독자분들은 apt-get의 편리함을 알고 있을 것이다.

지난날을 돌이켜 보면, PC에 ARM 크로스 컴파일러를 설치하고, 각종 개발용 패키지 소스들을 컴파일 해서 생성된 바이너리 파일을 다시 ARM 보드에 올리고 하는 작업들이 얼마나 번거럽고 시간이 많이 걸리는 작업이였던가? 더구나 패키지 소스 버전들이 너무 다양하고 크로스 컴파일 옵션들이 너무 많아서, 빌드할때 마다 쏟아 지는 각종 경고 메시지와 에러메서지를 해결 하느라 몇날 몇일을 고생한 독자분들이 많을 것이다. 아마 몇몇 독자분들은 이러한 ARM 보드에서의 리눅스 개발환경이 너무 힘들어 개발 환경 구축 단계에서 포기해 버리는 경우가 많았을 것이다.

이제 이러한 문제가 한방에 해결되었다.

그동안의 불편함은 없어 졌다. 커널연구회가 포팅한 Exynos5420 보드 하나로 모든 문제들이 해결된다. 더구나 Exynos5420의 고성능 사양으로 인해서 ARM 보드를 리눅스 우분투 서버로 활용해도 손색이 없다. 이제 더 이상 고가의 비용을 지불하고 서버를 구축할 필요가 없다. Exynos5420 보드를 묶어서 병렬처리 서버를 저비용으로 구축할 수도 있다. IoT 환경에서 간단한 데이터 수집 서버로 활용해도 되고, 병렬처리용 클러스터 서버로 묶어서 빅데이트를 처리할 수도 있다.

이 모든것들은 ARM 보드에서 개발환경 구축의 편리함에서부터 시작된다.
아파치 웹서버, PHP, MySQL을 단 20분이내로 구축할 수 있다.
또한 개발한 어플리케이션 소스를 ARM 보드의 네이티브 gcc 컴파일로 직접 실행할 수 있다.
과거 PC 개발환경에서 몇날 몇일을 크로스 컴파일링 해본 독자분들은 느낄 것이다. 이것의 편리함을.

이제 Exynos5420 보드 하나로 해결되었다. 여기에 아파치 웹서버, PHP, MySQL, 각종 개발환경 도구들(ssh, wget, SQLite…)을 apt-get으로 설치하고, ARM 네이티브 gcc로 직접 개발하는 편리한 경험들을 즐겁게 하도록 하자.

지금까지 내용들을 세미나를 통해서 시연할 예정입니다.
무료로 진행되니 아래 일시 참고하시어 많은 참가 부탁드립니다.

2015년 10월 9일(금,한글날) 오후3시~4시(2시간)

감사합니다.

댓글

세벌의 이미지

음. 그럼 그만큼 무거워졌다는 건 아닐까요?
크로스컴파일 안 해도 된다는 건 좋긴 한데.ㅔ..

rgbi3307의 이미지

안녕하세요?
기능이 향상 되었다는 것으로 보면 좋겠습니다.
이 정도 사양이면 PC 이상의 성능을 발휘합니다. 손바닥만한 보드에 아파치 웹서버, PHP, MySQL, phpMyAdmin등을 돌릴 수 있으므로, 저전력 소형화를 추구하는 IoT 환경에서 데이터 수집 및 중계 서버로 활용가치가 높을듯 합니다.

From:
*알지비 (메일: rgbi3307(at)nate.com)
*틈틈히 커널연구회(http://www.kernel.bz/) 내용물들을 만들고 있음.
*((공부해서 남을 주려면 남보다 더많이 연구해야함.))

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.