Guillermo Austin Kim

Sources

Posts

998 posts

[ARM] ARM 프로세서를 공부하는 방법의 문제점

Guillermo Austin Kim|2020년 9월 14일

분야를 막론하고 새로운 IT 기술을 배울 때 공부하는 방법은 중요합니다. 가끔은 "무식하게, 시행착오를 많이 겪는 게 최고의 공부 방법이라"라고 말하는 분도 있지만, ARM 프로세서를 학습할 때는 적용할 만한 조언은 아닌 것 같습니다. 왜냐면 저의 수년간의 실전 프로젝트를 통해 다음과 같은 사실을 절감했기 때문입니다. ● ARM 프로세서는 정말로 공부하는 방법이 중요하다! ARM 프로세서를 공부하는 방법이 중요한 이유는 무엇일까요? 잘못된 방법으로 ARM 프로세서를 공부하면 배운 내용이 오랫동안 머릿 속에 남지 않기 때문입니다. 빨리 지루해집니다. 무엇보다 배운 내용을 실전 프로젝트에 활용하지 못합니다. 그래서 ARM 프로세서를 공부하다가 포기하거나 ARM 프로세서가 정말 어려운 주제라

[ARM] ARM 프로세서를 일반 SW 개발자도 배워야 하는 이유

Guillermo Austin Kim|2020년 9월 14일

하드웨어를 제어하는 시스템 소프트웨어 개발자들은 ARM 프로세서를 잘 배워야 한다고 말씀 드렸습니다. 그렇다면 다른 분야의 소프트웨어 개발자들도 ARM 프로세서들을 잘 알아야 할까요? 솔직히 말해, 모든 소프트웨어 개발자가 ARM 프로세서를 잘 배울 필요는 없습니다. 예전과 달리 소프트웨어 분야가 다양해졌고, 한 프로젝트에 탑재되는 소프트웨어의 계층 구조도 복잡해졌기 때문입니다. 다음은 안드로이드의 시스템 아키텍처 구성도인데, 이 그림을 보면서 설명을 더 하겠습니다. 그림: 안드로이드 소프트웨어 계층 그림의 윗 부분부터 보면 "Application" - "Application Framework" - "Libraries" - "Linux Kernel" 이란 계층이 보입니다. "Application"

[ARM] 임베디드 개발자가 ARM 프로세서를 배워야 하는 이유

Guillermo Austin Kim|2020년 9월 9일

2005년도에 제가 처음 개발을 시작한 프로젝트는 ARM7 프로세서 기반의 시스템이었습니다. 프로젝트에 투입된 소프트웨어 개발자들은 모두 ARM 프로세서 교육을 들었습니다. ARM 프로세서를 왜 배워야 하는지 의문을 품었던 개발자는 거의 없었던 것 같은데요. 2021년인 지금 가끔 ARM 프로세서 학습의 필요성에 대해 의문을 품는 분들이 종종 있는 것 같습니다. 이번 포스트에서 임베디드 개발자가 ARM 프로세서를 왜 배워야 하는지 살펴보겠습니다. 브링업을 제대로 하기 위해서 임베디드 개발자들이 진행하는 프로젝트의 단계는 '보드 브링업 - 기능 안정화 - 유지 보수'로 분류될 수 있습니다. 3단계 중 보드 브링업 단계에서 구체적으로 어떤 일을 할까요? 과제에 따라 다르지만 개발 업무의 내용을 요약하면

[유튜브동영상][임베디드] 꼰대 개발자가 되는 방법

Guillermo Austin Kim|2020년 9월 7일

특히 임베디드 소프트웨어 분야에 꼰대 개발자가 많으니 조심합시다. # 꼰대 개발자의 특징 ● 자신이 성공한 개발자라고 확신한다.● 다른 개발자들도 나처럼 성공하고 싶어 한다고 확신한다.● 자신의 개발 방식이 여전히 먹힐 것이라 확신한다.● 귀찮게 충고를 한다.● 문제 해결 능력이 떨어지는 유형이 많다. ​# 꼰대 개발자와 일할 때 주의해야 할 점 ​● 충고를 하면 잘 들어주는 척 한다.● 개발 팁은 절대 새겨 들으면 안된다. ● 같이 일하면 실력이 늘지 않는다.

[ARM] ARMv8(Aarch64) 아키텍처 기반 프로젝트가 대세인가?

Guillermo Austin Kim|2020년 9월 2일

ARMv8 아키텍처는 64비트로 구성된 명령어를 지원하고 최신 ARM 코어 기술들을 지원합니다. 최근에 출시된 모바일 폰은 거의 대부분 ARMv8(Aarch64: 64비트 명령어) 아키텍처 기반의 ARM 프로세서를 탑재하고 있습니다. 그래서 대부분 ARMv8(Aarch64) 프로세서를 대부분 IT 기기에서 적용한다고 생각했습니다. 하지만 이건 저만의 착각이었습니다. 여러 임베디드 개발자분들과 교류한 후 다음과 같은 사실을 깨닫게 됐습니다. * ARMv7 아키텍처(32비트 명령어) ARM 프로세서를 많이 사용하고 있다. ARM 프로세서의 가격 그렇다면 32비트 기반 ARM 프로세서(Cortex-A9, Cortex-M3)를 채택하는 이유는 무엇일까요? * 바로 가격 때문입니다. 모바