デバッグで学ぶRISC-Vアーキテクチャ -2部
austinkim
オープンソースベースの最新CPUアーキテクチャであるRISC-Vの主要概念と実用的なヒントをわかりやすく詳細に説明します。
초급
cpu-architecture, cpu, riscv
システムソフトウェアの基本中の基本、最新のArmアーキテクチャ(Armv8-A, Armv7-A)の核心を「システムソフトウェア開発のためのArmアーキテクチャの構造と原理」の著者がしっかりと捉えてご説明します!
受講生 359名
Arm プロセッサ紹介
Arm アーキテクチャ学習方法
レジスター
アセンブリ命令
Armv7: 動作モード
Armv8: 例外レベル
システムソフトウェア基本の基本、
最新のArmアーキテクチャの中核!
0. 受講生300人突破30%割引クーポン発行
受講生300人突破(1、2部)を記念して30%割引クーポンを発行します。ありがとうございます。先着順100名です。
最新のArmアーキテクチャの機能と実践プロジェクトに直接適用できる有益なコンテンツを発掘し、以下の講義を追加しました。
継続講義はリニューアルされる予定です。
今回の講義<システムソフトウェア開発のためのArmアーキテクチャの構造と原理-第1作者直講>は、ロードマップ「システムソフトウェア開発者のためのArm-basic course」に含まれる講義です。
体系的にArmアーキテクチャ(Armv8-A、Armv7-A)を学びたい方はロードマップ(全体講義の30%割引)を活用してください。ちなみに、Armアーキテクチャロードマップ(作者直講全体)はBasic CourseとAdvanced Courseの2つで構成されています。
スマートフォンはもちろん、AI用SoCシステム半導体、電気自動車Automotive(自動運転、インフォテインメント)、クラウドサーバーやMacBookで使用されるArmプロセッサは、すべてArmv8-Aベースの64ビットCortex-Aプロセッサ(Cortex-A53、Cortex-A57、Cortex-A72など)です。現在、システムソフトウェア業界で最も必要な基盤知識が求められる内容がArmv8-Aアーキテクチャと見なすことができます。
ところで、最新のArmアーキテクチャであるArmv8-AとArmv7-Aのアーキテクチャはとても難しく感じられましたか? 。
システム半導体、電気自動車分野(自律走行、インフォテインメント)を含むシステムソフトウェア分野で能力を育成したいジュニア開発者
システム半導体、電気自動車分野などのシステムソフトウェア開発をしたい就職準備生
システムソフトウェア分野(メモリ、ファイルシステム、オペレーティングシステム)の大学院進学を目指す大学生
システムソフトウェア分野にキャリアを切り替えたい他の分野の開発者
多くのLinux組み込み開発者を希望する方は、コンピュータ構造やオペレーティングシステムを学びます。そしてCS理論もある程度勉強します。最近浮上しているシステム半導体および電気自動車システムソフトウェア開発者は、Linuxデバイスドライバ、RTOS、またはブートローダを分析します。しかし、それだけでは何か不足していることを自分で感じます。プロのシステムソフトウェア開発者になるためには必ずArmアーキテクチャを知る必要があるという事実を知っていますが、いざArm仕様文書を広げる瞬間、容易ではない道であり、独学は難しいと判断することになります。
システムソフトウェア開発の核心は、CPUやコンピュータ構造であっても過言ではありません。 IT業界で最も必要なCPUプロセッサである最新のArmアーキテクチャ(Armv8-A、Armv7-A)に関するコア理論を簡単に説明しました!
Arm アーキテクチャが難しいのは、Arm アーキテクチャをハードウェア プロセッサの観点からのみ学ぶためです。このレッスンでは、コード分析と具体的なケースの紹介で Arm アーキテクチャを構成する内容が実際にどのように使用されるかを説明します。このレッスンは、強力なシステムソフトウェア開発者になることができる重要な役割を果たします。
Armアーキテクチャを学ぶショートカットは何ですか?直接デバッグをしながら練習してみることです。
この講義を受講すれば、教育用TRACE32シミュレータプログラムを「Inflearn講義講義資料」からダウンロードし、直接TRACE32シミュレータプログラムを活用して講義で説明するデバッグ過程(アセンブリ命令を含む)を直接したがってデバッグすることができます。カリキュラムの関連デバッグレッスンは次のとおりです。
また、動作モード、アクセプションレベルに関連するデバッグも一緒に行うことができます。
本『Armアーキテクチャの構造と原理』の内容だけでなく、本で扱わないArmアーキテクチャのデバッグ実習や様々な事例を具体的に説明します。
システム半導体の開発プロセスとともに、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」 。何よりも最新のシステムソフトウェアトレンド(電気自動車、システム半導体 - システムソフトウェア)を最もよく知っている現代開発者です。また、システムソフトウェア分野で最も知識の伝播活動を活発にする教育者です。
国内で誰よりもArmアーキテクチャ(Armv8-A、Armv7-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'
全体
165件 ∙ (22時間 9分)
講座資料(こうぎしりょう):
4. 1.0 システム半導体とArm
07:42
5. 1.1 Arm プロセッサの歴史
10:48
6. 1.1.1 エーコンの設立
02:59
7. 1.1.2 Arm社の設立
05:00
16. 1.5.3 Arm コアとは
01:18
17. 1.6 この本の構成
12:41
全体
21件
5.0
21件の受講レビュー
受講レビュー 4
∙
平均評価 5.0
5
講義を聞いてみると頭が澄んでいて何か体重が下がったような感じです。その間、漠然としたARMの主な概念が明確にまとめられたのが不思議です。講義を聞いて変わった私の姿が少し驚きました。 ARM仕様を読むたびに新しくなりました。プロジェクトにすぐに適用できる内容は物事も不思議で、周囲の同僚開発者にもおすすめしました。人生の講義を聞くことができて嬉しくて、より多くの講義がアップロードされたらと思います。素晴らしいと有益な講義に感謝します。
良い評価と励ましありがとうございます。もし気になる点があれば、いつでもQ/Aとして残してください。これから私の講義を "本当によく聞いた"という確信を差し上げるために最善を尽くします。
受講レビュー 3
∙
平均評価 5.0
5
ARM歴史から始めて、ARM instruction、レジスタ、exception levelまで、ARM構造理解の必須基礎ベースを非常に詳しく説明してくれてありがとう! このような内容の書籍は、最低国内では見られませんでした。 Linuxカーネルに関する業務を進めたり、ARMに関心のある方にぜひお勧めします!
良い評価と励ましありがとうございます。もし気になる点があれば、いつでもQ/Aとして残してください。 これから私の講義を "本当によく聞いた"という確信を差し上げるために最善を尽くします。
受講レビュー 4
∙
平均評価 5.0
5
TRACE32、Linuxカーネルソース、XENハイパーバイザーソースなど、実際に適用された例でARMアーキテクチャを学び、理論が頭に長く残っていて興味深く講義を見ることができました。 3部講義もオルガル見たい理論だけでなく、実際にプログラミングをする実習講義も開設されたらと思います。良い講義ありがとうございます。
良い評価ありがとうございます。特にシステムソフトウェアのさまざまな分野で活用できる実習例が多く含まれており、実務に多くの役に立つと予想されます。初めに出版される予定ですので参考にしてください。
受講レビュー 2
∙
平均評価 5.0
受講レビュー 17
∙
平均評価 4.9
¥15,639
知識共有者の他の講座を見てみましょう!
同じ分野の他の講座を見てみましょう!