Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
BEST
Hardware

/

Embedded IoT

システムソフトウェア開発のためのArmアーキテクチャの構造と原理 - 1部 著者直講 (2024年版)

システムソフトウェアの基本中の基本、最新のArmアーキテクチャ(Armv8-A, Armv7-A)の核心を「システムソフトウェア開発のためのArmアーキテクチャの構造と原理」の著者がしっかりと捉えてご説明します!

저자 직강
이론 중심
arm-architecture
ARM Architecture
cortex-a
Embedded
microprocessors

学習した受講者のレビュー

こんなことが学べます

  • Arm プロセッサ紹介

  • Arm アーキテクチャ学習方法

  • レジスター

  • アセンブリ命令

  • Armv7: 動作モード

  • Armv8: 例外レベル

システムソフトウェア基本の基本、
最新のArmアーキテクチャの中核!

<お知らせ>

0. 受講生300人突破30%割引クーポン発行

受講生300人突破(1、2部)を記念して30%割引クーポンを発行します。ありがとうございます。先着順100名です。

  • クーポン: 18267-3c7819cbb4a4

1. 2024年最新講義リニューアル

最新のArmアーキテクチャの機能と実践プロジェクトに直接適用できる有益なコンテンツを発掘し、以下の講義を追加しました。

  • TRACE32プログラムのデバッグコンテンツ:教育用TRACE32シミュレータプログラムを「Inflearn講義講義資料」からダウンロードできます。 TRACE32シミュレータプログラムを直接使用して、講義で説明するデバッグプロセス(アセンブリ命令を含む)を直接したがってデバッグできます。
  • 追加されたデバッグ実習講義:レジスタ実習(50分)、アセンブリ命令(60分)、動作モードとアクセプションレベル(60分)

継続講義はリニューアルされる予定です。

2. Arm アーキテクチャ 全著者 直講講義ロードマップ

今回の講義<システムソフトウェア開発のためのArmアーキテクチャの構造と原理-第1作者直講>は、ロードマップ「システムソフトウェア開発者のためのArm-basic course」に含まれる講義です。

体系的にArmアーキテクチャ(Armv8-A、Armv7-A)を学びたい方はロードマップ(全体講義の30%割引)を活用してください。ちなみに、Armアーキテクチャロードマップ(作者直講全体)はBasic CourseAdvanced Courseの2つで構成されています。


システム半導体、自動車分野など
システムソフトウェア開発者なら
必ず知っておくべきArmアーキテクチャ。

スマートフォンはもちろん、AI用SoCシステム半導体、電気自動車Automotive(自動運転、インフォテインメント)、クラウドサーバーやMacBookで使用されるArmプロセッサは、すべてArmv8-Aベースの64ビットCortex-Aプロセッサ(Cortex-A53、Cortex-A57、Cortex-A72など)です。現在、システムソフトウェア業界で最も必要な基盤知識が求められる内容がArmv8-Aアーキテクチャと見なすことができます。

ところで、最新のArmアーキテクチャであるArmv8-AとArmv7-Aのアーキテクチャはとても難しく感じられましたか?


システムソフトウェア開発者、組み込みシステム(BSP)プログラマーに注目!

システム半導体、電気自動車分野(自律走行、インフォテインメント)を含むシステムソフトウェア分野で能力を育成したいジュニア開発者 

システム半導体、電気自動車分野などのシステムソフトウェア開発をしたい就職準備生

システムソフトウェア分野(メモリ、ファイルシステム、オペレーティングシステム)の大学院進学を目指す大学生

システムソフトウェア分野にキャリアを切り替えたい他の分野の開発者

多くのLinux組み込み開発者を希望する方は、コンピュータ構造やオペレーティングシステムを学びます。そしてCS理論もある程度勉強します。最近浮上しているシステム半導体および電気自動車システムソフトウェア開発者は、Linuxデバイスドライバ、RTOS、またはブートローダを分析します。しかし、それだけでは何か不足していることを自分で感じます。プロのシステムソフトウェア開発者になるためには必ずArmアーキテクチャを知る必要があるという事実を知っていますが、いざArm仕様文書を広げる瞬間、容易ではない道であり、独学は難しいと判断することになります。


Armアーキテクチャの核心
わかりやすく説明します!

  • 1️⃣Armアーキテクチャのレジスタとアセンブリ命令の理解、動作モード、およびアクセプションレベルなどのコア理論を理解できます。
  • 2️⃣Armアーキテクチャの主な内容をコードレベルで再び経験し、Armアーキテクチャの理解レベルがはるかに高くなります。
  • 3️⃣ Armアーキテクチャがサポートするさまざまな機能を活用することで、高い安定性とパフォーマンスを保証するシステムプログラム(ドライバ、ブートローダ)を開発できます。
  • 4️⃣ TRACE32 デバッグプログラムで直接練習を進めながら、アセンブリ命令と関連機能を直接デバッグできます。実戦プロジェクトの開発に必要な各種理論や事例を自ら理解できます。

システムソフトウェア開発の核心は、CPUやコンピュータ構造であっても過言ではありません。 IT業界で最も必要なCPUプロセッサである最新のArmアーキテクチャ(Armv8-A、Armv7-A)に関するコア理論を簡単に説明しました!

Arm アーキテクチャが難しいのは、Arm アーキテクチャをハードウェア プロセッサの観点からのみ学ぶためです。このレッスンでは、コード分析と具体的なケースの紹介で Arm アーキテクチャを構成する内容が実際にどのように使用されるかを説明します。このレッスンは、強力なシステムソフトウェア開発者になることができる重要な役割を果たします。


TRACE32シミュレータプログラム(教育用)提供

Armアーキテクチャを学ぶショートカットは何ですか?直接デバッグをしながら練習してみることです。

この講義を受講すれば、教育用TRACE32シミュレータプログラムを「Inflearn講義講義資料」からダウンロードし、直接TRACE32シミュレータプログラムを活用して講義で説明するデバッグ過程(アセンブリ命令を含む)を直接したがってデバッグすることができます。カリキュラムの関連デバッグレッスンは次のとおりです。

  • TRACE32 - レジスタ実習 (2024 version)
  • TRACE32 - 動作モードのデバッグ実践 (2024 version)
  • TRACE32 - アセンブリ命令のデバッグ実践 (2024 version)
  • TRACE32 - 受付レベルのデバッグ実践 (2024 version)

また、動作モード、アクセプションレベルに関連するデバッグも一緒に行うことができます。


著者直講!本にない内容まで
具体的に説明します。

本『Armアーキテクチャの構造と原理』の内容だけでなく、本で扱わないArmアーキテクチャのデバッグ実習や様々な事例を具体的に説明します。

  • ✅ 40%: 本の中核内容
  • ✅ 40%: Arm アーキテクチャ関連の主要ケーススタディ、コードレビュー
  • ✅ 20%: デバッグ実習 - TRACE32

主な講義内容

システム半導体の開発プロセスとともに、ArmプロセッサとArmアーキテクチャを紹介します。 Armプロセッサのプロファイルとファミリについて説明します。

Armv7-Aアーキテクチャのレジスタを紹介し、それぞれの特徴を説明します。

汎用レジスタ(Armv7-A)のうちバンクドレジスタについて詳しく説明します。プロセスの状態情報を含むCPSRレジスタを構成する主なフィールドについて詳しく説明します。

Armv8-Aアーキテクチャで定義されているレジスタを理解しやすく詳細に説明します。

TRACE32 プログラムでレジスタをデバッグします。 Armv7-AとArmv8-Aアーキテクチャで定義されているレジスタの値を直接変更しながら、レジスタの動作原理を詳しく説明します。もちろん、受講生分が直接したがってデバッグできるように説明します。


アセンブリ命令の基本構造を説明し、それぞれアセンブリ命令を詳細に説明する。

アセンブリ命令の文法の説明にとどまらず、アセンブリ命令が実際のプロジェクトでどのように利用されるかを詳細に説明します。

TRACE32 プログラムでアセンブリ命令を直接デバッグしながら説明します。算術命令(例:MOV、ADD、SUB)から分岐命令、ビット演算命令、および論理命令(AND、ORR、EOR)まで、受講者がデバッグできるようにします。


Armv7-Aのベースである動作モードを紹介し、それぞれの特徴について詳しく説明します。動作モードごとにどのソフトウェアが実行されるかを説明します。

動作モードに関するPrivilegeレベルについて説明し、動作モードがわかるCPSRレジスタのビットフィールドを詳細に分析します。

TRACE32 プログラムで動作モードを変更する命令を直接デバッグします。また、エクセプションを誘発する命令を直接実行して、エクセプションが誘発される過程を直接デバッグ過程として説明します。受講生の方々が一緒にデバッグできるように説明します。


Armv8-Aアーキテクチャの重要な機能の1つであるExceptionレベルの概念を簡単かつ詳細に説明します。

仕様文書分析を使用して、Exceptionレベルを詳細にレビューし、Exceptionレベルで実行されるソフトウェアスタックについて説明します。

TRACE32 プログラムでエクセプションレベルを読む練習を進めます。また、SVC、HVC命令を直接実行して、アクセプションレベルが変わる過程を直接デバッグしながら説明します。受講生は、TRAC32プログラムをダウンロードしてデバッグできます。


Armプロセッサの動作原理を理解するための近道は、Arm仕様書を直接読んで理解することです。
入門者には決して簡単ではありません。いくら有益な内容であっても理解するのが難しいからです。このレッスンは、難しいArmアーキテクチャの理論に近づくために道を開くことを目的としています。


本の執筆/講義の経歴に基づいて
誰よりも深く詳細に!

国内システムソフトウェア分野で専務後務限! 「Armアーキテクチャ(Armv8-A、Armv7-A)」と「Linuxカーネル」の本を書いた著者( 2冊の本とも大韓民国学術院優秀図書に選定であり、国内初で海外出版社(Packt)を通じて「Reverse Engineering Armv8-A Systems」 何よりも最新のシステムソフトウェアトレンド(電気自動車、システム半導体 - システムソフトウェア)を最もよく知っている現代開発者です。また、システムソフトウェア分野で最も知識の伝播活動を活発にする教育者です。

  • Reverse Engineering Armv8-A Systems: A practical guide to Kernel, Firmware, and TrustZone analysis (Packt 出版社: 英語) - 2025 年版
  • 「システムソフトウェア開発のためのArmアーキテクチャの構造と原理」 2024年、大韓民国学術院優秀図書上著者
  • 「デバッグを通じて学ぶLinuxカーネルの構造と原理」2021年、大韓民国学術院優秀図書上)著者
  • 「プログラマスデブコース: Linuxシステムとカーネルの専門家」メインインストラクター
  • 2022年6月、韓国コンピュータ総合学術大会(KCC2022) - チュートリアル発表 [ftraceを利用してLinuxカーネルを征服する]
  • LG電子「Linuxカーネル」および「Armv8アーキテクチャ」社内講師(国内および海外開発者を含む) - (2020年~2024)

国内で誰よりもArmアーキテクチャ(Armv8-A、Armv7-A)を成し遂げる主な機能をよく説明できる教育者だと自信を持ってお話しできます。


学習者が残した鮮やかな受講評


Q&A 💬

Q. システムソフトウェア開発者になるには、Arm アーキテクチャを学ぶ必要がありますか?

はい、必ず学ぶ必要があります。 IT業界で最も使用されているCPUはArmプロセッサです。ハードウェアを制御するプログラミングを行うシステムソフトウェア開発者は、Armアーキテクチャに関連する内容を正しく知っていなければ問題解決が可能な場合が多いからです。 Armアーキテクチャがわからない場合は、単純なシステム設定作業しかできない可能性があります。

Q. 非専攻者なのに Arm アーキテクチャを学べますか?

非専攻者もこの講義の内容をよく聞くと、Armアーキテクチャの基本原理を十分に理解できます。 「システムソフトウェア開発のためのArmアーキテクチャの構造と原理」の本のベータリーダーの中で、非専攻者も多数いました。最初にArmアーキテクチャの内容を読んですぐに理解するのは大変でしたが、本を2〜3回読んでほとんどArmアーキテクチャを理解しました。この講義は本の内容をより詳細に具体的に説明するので、この講義を聞くと非専攻者もArmアーキテクチャをよく理解できるはずです。

Q. セキュリティソフトウェア開発者になるには、この講義を聞く必要がありますか?

V3のようなソフトウェアを開発したい場合は、CPUアーキテクチャの理論は不可欠です。カーネルドライバ開発者に移った後、ArmアーキテクチャなどのCPUアーキテクチャを知る必要があります。リバーシングをはじめ、様々な攻撃/防御技法の核心を学ぶには、Armアーキテクチャの理論を知らずに試みても難しいです。

Q. C言語、資料構造程度だけ勉強しました。それでもこの講義を聞くことはできますか?

はい、聞くことができます。この講義を聞くために特別な選手の知識は必要ありません。プレーヤーの知識よりも、次のような態度が重要になる可能性があります。

  • 着実に講義を聞く努力
  • よく分からない内容を聞くと悩み、考える訓練
  • 着実に復習する習慣

ただし、オペレーティングシステムやRTOSに関する内容を既に知っていれば、本講義を理解するのに役立ちます。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • システム半導体(ファブレス)、電気自動車分野(自動運転、インフォテインメント)を含むシステムソフトウェア分野で力量を培いたいジュニア開発者

  • システムソフトウェア分野へのキャリア転換を希望する他分野の開発者

  • システム半導体(ファブレス)、電気自動車の分野でシステムソフトウェア開発をしたい就活生

  • システムソフトウェア分野(メモリ、ファイルシステム、オペレーティングシステム)の大学院進学を目指す大学生

  • Armアーキテクチャの機能を活用して実務でどのようにデバッグするのか知りたいシステムソフトウェア開発者(システム半導体、電気自動車)

  • システム半導体でArmv8-AベースのArmプロセッサがどのように動作するのか知りたいシステムソフトウェア開発者

  • Armベースのシステムで卒業課題を準備中の卒業学年の学生

  • 研究室のプロジェクトをArmプロセッサ環境で進めている大学院生

前提知識、
必要でしょうか?

  • コンピュータ構造

  • オペレーティングシステム

こんにちは
です。

5,437

受講生

148

受講レビュー

84

回答

4.9

講座評価

21

講座

글로벌 저자 & 리눅스 시스템 소프트웨어 개발자 (Arm, RISC-V 아키텍처)

국내 시스템 소프트웨어 분야에서 전무후무한! 'Arm 아키텍처(Armv8-A, Armv7-A)'와 '리눅스 커널' 책을 쓴 저자(2권의 책 모두 대한민국 학술원 우수도서에 선정)이며, 국내 최초로 해외 출판사(Packt)를 통해 "Reverse Engineering Armv8-A Systems" 책(영어)을 집필한 글로벌 저자입니다. 무엇보다 최신 시스템 소프트웨어 트렌드(전기자동차, 시스템 반도체- 시스템 소프트웨어)를 가장 잘 알고 있는 현업 개발자입니다. 또한 시스템 소프트웨어 분야에서 가장 지식 전파 활동을 활발하게 하는 교육자입니다. 

  • 'Reverse Engineering Armv8-A Systems: A practical guide to Kernel, Firmware, and TrustZone analysis' 책(영어) 저자, (Packt 출판사)

  • '시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리'(2024년, 대한민국 학술원 우수도서상) 저자

  • '디버깅을 통해 배우는 리눅스 커널의 구조와 원리' (2021년, 대한민국 학술원 우수도서상) 저자

  • '프로그래머스 데브 코스: 리눅스 시스템 및 커널 전문가' 메인 강사

  • 2022년 6월, 한국컴퓨터종합학술대회 (KCC2022) - 튜토리얼 발표 [ftrace를 이용해 리눅스 커널 정복하기]

  • LG전자 '리눅스 커널' 및 'Armv8 아키텍처' 사내 강사(국내 및 해외 개발자 포함) - (2020년~현재)

국내에서 어느 누구보다 리눅스 커널과 Arm 아키텍처(Armv8-A, Armv7-A)를 잘 설명할 수 있는 교육자라고 자신있게 말씀드릴 수 있습니다.

강의문의 : austindh.kim@gmail.com

주요 로드맵 🎯

'시스템 소프트웨어 개발자를 위한 Arm - basic course'

'시스템 소프트웨어 개발자를 위한 Arm - advanced course'

시스템 소프트웨어 개발자를 위한 Linux kernel - basic course

カリキュラム

全体

165件 ∙ (22時間 9分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

21件

5.0

21件の受講レビュー

  • rousalome6394님의 프로필 이미지
    rousalome6394

    受講レビュー 4

    平均評価 5.0

    5

    31% 受講後に作成

    講義を聞いてみると頭が澄んでいて何か体重が下がったような感じです。その間、漠然としたARMの主な概念が明確にまとめられたのが不思議です。講義を聞いて変わった私の姿が少し驚きました。 ARM仕様を読むたびに新しくなりました。プロジェクトにすぐに適用できる内容は物事も不思議で、周囲の同僚開発者にもおすすめしました。人生の講義を聞くことができて嬉しくて、より多くの講義がアップロードされたらと思います。素晴らしいと有益な講義に感謝します。

    • austinkim
      知識共有者

      良い評価と励ましありがとうございます。もし気になる点があれば、いつでもQ/Aとして残してください。これから私の講義を "本当によく聞いた"という確信を差し上げるために最善を尽くします。

  • mikeseohyungjin5975님의 프로필 이미지
    mikeseohyungjin5975

    受講レビュー 3

    平均評価 5.0

    5

    7% 受講後に作成

    ARM歴史から始めて、ARM instruction、レジスタ、exception levelまで、ARM構造理解の必須基礎ベースを非常に詳しく説明してくれてありがとう! このような内容の書籍は、最低国内では見られませんでした。 Linuxカーネルに関する業務を進めたり、ARMに関心のある方にぜひお勧めします!

    • austinkim
      知識共有者

      良い評価と励ましありがとうございます。もし気になる点があれば、いつでもQ/Aとして残してください。 これから私の講義を "本当によく聞いた"という確信を差し上げるために最善を尽くします。

  • grapesgun0624님의 프로필 이미지
    grapesgun0624

    受講レビュー 4

    平均評価 5.0

    5

    100% 受講後に作成

    TRACE32、Linuxカーネルソース、XENハイパーバイザーソースなど、実際に適用された例でARMアーキテクチャを学び、理論が頭に長く残っていて興味深く講義を見ることができました。 3部講義もオルガル見たい理論だけでなく、実際にプログラミングをする実習講義も開設されたらと思います。良い講義ありがとうございます。

    • austinkim
      知識共有者

      良い評価ありがとうございます。特にシステムソフトウェアのさまざまな分野で活用できる実習例が多く含まれており、実務に多くの役に立つと予想されます。初めに出版される予定ですので参考にしてください。

  • miraelim7446님의 프로필 이미지
    miraelim7446

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    • dlrbcnvk님의 프로필 이미지
      dlrbcnvk

      受講レビュー 17

      平均評価 4.9

      5

      30% 受講後に作成

      ¥15,639

      austinkimの他の講座

      知識共有者の他の講座を見てみましょう!

      似ている講座

      同じ分野の他の講座を見てみましょう!