강의

멘토링

커뮤니티

Hardware

/

Embedded IoT

Kiến trúc Arm: TrustZone [Bài giảng trực tiếp của tác giả phần 3-1]

Tác giả của "Cấu trúc và nguyên lý của kiến trúc Arm để phát triển phần mềm hệ thống" sẽ trình bày một cách chuẩn xác về TrustZone, nền tảng của nền tảng phần mềm hệ thống và cốt lõi của kiến trúc Arm mới nhất (Armv8-A, Armv7-A)!

(4.3) 10 đánh giá

142 học viên

  • austinkim
저자 직강
이론 중심
시스템 해킹
하드웨어-해킹
임베디드리눅스
ARM Architecture
armv8
armv7
trusted-execution-environment
assembly-language

Bạn sẽ nhận được điều này sau khi học.

  • Có thể nắm bắt nguyên lý hoạt động cơ bản của Trustzone trong kiến trúc Arm (Armv8-A, Armv7-A).

  • Bạn có thể biết cách Trustzone của kiến trúc Arm được dùng trong dự án thực tế.

  • Tổng quan, có thể nắm bắt luồng thực thi và cấu trúc liên quan đến Trustzone.

  • Trong phỏng vấn, tôi có thể trả lời tốt các câu hỏi liên quan đến Trustzone.

1. Phát hành coupon giảm giá 30% khi vượt qua 300 người

Để kỷ niệm việc vượt qua 300 học viên (phần 1,2), chúng tôi phát hành coupon giảm giá 30%. Cảm ơn các bạn. Chỉ dành cho 100 người đầu tiên.

2. Hướng dẫn lộ trình 🎯

Bài gi강 nàyLộ trình'Arm cho nhà phát triển phần mềm hệ thống - khóa học nâng cao'được bao gồm trong khóa học.


Những bạn muốn học kiến trúc Arm (Armv8-A, Armv7-A) một cách có hệ thống nên sử dụng lộ trình học (giảm giá 30% toàn bộ khóa học). Tham khảo, lộ trình kiến trúc Arm (toàn bộ khóa học trực tiếp từ tác giả) làBasic CourseKhóa học Nâng caoĐược cấu thành từ 2 phần.


Trong phần mềm hệ thống mới nhất
Kiến trúc Arm quan trọng nhất

Không chỉ smartphone mà cả SoC bán dẫn hệ thống cho AI, ô tô điện Automotive (tự lái, infotainment) và bộ xử lý Arm được sử dụng trong máy chủ cloud cũng như MacBook đều là bộ xử lý Cortex-A 64-bit dựa trên Armv8-A (Cortex-A53, Cortex-A57, Cortex-A72, v.v...). Có thể nói rằng kiến thức nền tảng được yêu cầu nhiều nhất trong ngành phần mềm hệ thống hiện tại chính là kiến trúc Armv8-A.


Các nhà phát triển phần mềm hệ thống, lập trình viên hệ thống nhúng (BSP) chú ý! 🙋‍♂

Nhưng trong các tính năng chính tạo nên kiến trúc Arm - quy tắc điều khiển bộ xử lý Arm bằng phần mềm, thì tính năng (Feature) được sử dụng nhiều nhất trong các dự án thực tế là gì? Chính là 'Trustzone'.

Đây cũng là câu hỏi thường xuất hiện trong phỏng vấn tuyển dụng nhà phát triển phần mềm hệ thống cho cả ứng viên có kinh nghiệm và ứng viên mới.


Cụ thể tại sao chúng ta cần học về Trustzone?

Thực tế, 'Trustzone' ban đầu được sử dụng như một tính năng mở rộng bảo mật, nhưng giờ đây hầu hết các bộ xử lý Arm đều kích hoạt 'Trustzone' làm mặc định để sử dụng. Các bộ xử lý Arm được sử dụng trong smartphone cũng như hệ thống infotainment và lái xe tự động của xe điện đều có Trustzone được kích hoạt.

Để hiểu toàn bộ cấu trúc của hệ thống, 'Trustzone' là một tính năng bắt buộc phải hiểu.



Khóa học trực tiếp từ tác giả với 12 năm kinh nghiệm làm kỹ sư hệ thống!

Tôi đã viết cuốn sách 'Cấu trúc và Nguyên lý của Kiến trúc Arm cho Phát triển Phần mềm Hệ thống' (chương 14) có đề cập chi tiết về 'Trustzone'. Tôi hy vọng bạn sẽ học tập sâu sắc về 'Trustzone' thông qua bài giảng trực tiếp của tác giả!

Tôi khuyên dùng cho những người như thế này

✅ Nhà phát triển phần mềm hệ thống muốn hiểu nguyên lý hoạt động của TrustZone trong kiến trúc Arm

✅ Nhà phát triển muốn biết các chức năng chính của TrustZone được sử dụng như thế nào trong các dự án thực tế

✅ Nhà phát triển bảo mật phát triển giải pháp bảo mật sử dụng TrustZone của Arm

Sau khi hoàn thành khóa học

  • Bạn có thể hiểu được các khái niệm cốt lõi của TrustZone.

  • Thông qua phân tích mã nguồn liên quan, có thể biết được TrustZone được triển khai theo cách thức nào.

  • Các nhà sản xuất chipset có thể biết được 5 tính năng cần thiết để thiết kế phần cứng sử dụng TrustZone.

  • Bạn có thể tự tin giải thích về Trust Zone trong buổi phỏng vấn.

Chúng ta sẽ học những nội dung như thế này

Xem xét chi tiết tài liệu đặc tả Arm và giải thích các thành phần cấu tạo của TrustZone.

Giải thích luồng thực thi của Non-secure World và Secure World trong kiến trúc Armv7 cùng với các lệnh assembly. Trong kiến trúc Armv7 với TrustZone, hệ thống được chia thành hai thế giới: **Non-secure World (Thế giới không bảo mật):** - Chạy hệ điều hành thông thường và ứng dụng người dùng - Có quyền truy cập hạn chế vào tài nguyên hệ thống - Không thể trực tiếp truy cập vào Secure World **Secure World (Thế giới bảo mật):** - Chạy Trusted OS và Trusted Applications - Có quyền truy cập đầy đủ vào tài nguyên hệ thống - Bảo vệ dữ liệu và mã nhạy cảm **Luồng chuyển đổi

Các tài liệu hoặc hội thảo khác liên quan đến kiến trúc Arm chỉ giải thích tập trung vào các khái niệm cơ bản của TrustZone.
Khóa học này khác biệt. Chúng tôi cùng đề cập đến nội dung có thể được áp dụng ngay vào phát triển thực tế trong công việc!


Chúng ta sẽ cùng nhau xem xét chi tiết bảng vector exception của kiến trúc Armv7 và mã handler liên quan đến chế độ monitor.

Giải thích chi tiết luồng thực thi của TrustZone trong kiến trúc Armv8 cùng với các lệnh assembly. Trong kiến trúc Armv8, TrustZone tạo ra hai thế giới thực thi riêng biệt: Secure World và Non-secure World. Luồng thực thi chuyển đổi giữa hai thế giới này thông qua các cơ chế bảo mật đặc biệt. **1. Khởi tạo hệ thống và Boot Process:** ```assembly // Boot ROM - Secure World (EL3) mrs x0, CurrentEL // Đọc Exception Level hiện tại cmp x0, #0xc // Kiểm tra EL3 (0xc = EL3) b.ne boot_error // Nếu không

Trong kiến trúc Armv8, chúng ta sẽ cùng tìm hiểu về exception handler, exception vector table và luồng thực thi của TrustZone. Đồng thời, chúng ta có thể học về nguyên lý hoạt động của TrustZone thông qua việc phân tích mã nguồn Arm-Trusted Firmware.

Dựa trên kinh nghiệm viết sách/giảng dạy
Sâu sắc và chi tiết hơn ai hết!

Trong lĩnh vực phần mềm hệ thống tại Hàn Quốc, đây là tác giả duy nhất! đã viết sách về 'Kiến trúc Arm (Armv8-A, Armv7-A)' và 'Linux Kernel'. Đồng thời cũng là nhà phát triển đang làm việc hiểu rõ nhất về các xu hướng phần mềm hệ thống mới nhất (xe điện, chất bán dẫn hệ thống - phần mềm hệ thống), và là nhà giáo dục tích cực nhất trong việc truyền bá kiến thức trong lĩnh vực phần mềm hệ thống.

  • Tác giả của 'Cấu trúc và nguyên lý kiến trúc Arm cho phát triển phần mềm hệ thống' (2024, Giải thưởng Sách Xuất sắc của Viện Hàn lâm Khoa học Hàn Quốc)

  • 'Học cấu trúc và nguyên lý của Linux kernel thông qua debugging' (2021, Giải thưởng sách xuất sắc của Viện Hàn lâm Khoa học Hàn Quốc) tác giả

  • 'Programmers Dev Course: Chuyên gia hệ thống Linux và kernel' Giảng viên chính

  • Tháng 6 năm 2022, Hội nghị Khoa học Máy tính Tổng hợp Hàn Quốc (KCC2022) - Bài thuyết trình hướng dẫn [Chinh phục nhân Linux bằng ftrace]

  • LG Electronics giảng viên nội bộ về 'Linux Kernel' và 'Kiến trúc Armv8' (bao gồm các nhà phát triển trong nước và nhà phát triển nước ngoài) - (2020~2024)


Tôi có thể tự tin nói rằng mình là một giáo viên có thể giải thích rõ ràng các tính năng chính tạo nên kiến trúc Arm (Armv8-A, Armv7-A) tốt hơn bất kỳ ai khác trong nước.

Đánh giá khóa học chân thực từ học viên


Những lưu ý trước khi học

Kiến thức tiên quyết và lưu ý

  • Tôi đã cấu trúc khóa học này để bạn có thể hiểu được TrustZone chỉ bằng cách chăm chỉ nghe giảng.

  • Trước khi học về TrustZone của Arm, bạn nên học các khái niệm cơ bản của kiến trúc Arm (chế độ hoạt động, mức exception) sẽ rất tốt.

  • Để hiểu luồng thực thi của TrustZone, bạn nên biết về khái niệm trap (exception) và interrupt.

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Một nhà phát triển phần mềm hệ thống muốn nắm bắt nguyên lý hoạt động của TrustZone trên kiến trúc Arm.

  • Nhà phát triển bảo mật phát triển giải pháp bảo mật sử dụng TrustZone của Arm.

  • Nhà phát triển muốn biết cách các tính năng chính của TrustZone được áp dụng vào dự án thực tế.

  • Lập trình viên junior mong muốn phát triển năng lực trong lĩnh vực phần mềm hệ thống, bao gồm bán dẫn hệ thống (fabless) và lĩnh vực ô tô điện (tự lái, infotainment).

  • Ứng viên tìm việc muốn phát triển phần mềm hệ thống trong lĩnh vực bán dẫn hệ thống (fabless) và ô tô điện.

  • Nhà phát triển phần mềm hệ thống (bán dẫn hệ thống, xe điện) muốn biết cách gỡ lỗi trong thực tế bằng cách tận dụng các tính năng của kiến trúc Arm.

Cần biết trước khi bắt đầu?

  • Kiến trúc máy tính

  • Hệ điều hành

  • Ngôn ngữ C

  • nhúng

  • CPU

Xin chào
Đây là

6,034

Học viên

204

Đánh giá

89

Trả lời

4.9

Xếp hạng

22

Các khóa học

글로벌 저자 & 리눅스 시스템 소프트웨어 개발자 (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

Chương trình giảng dạy

Tất cả

25 bài giảng ∙ (3giờ 41phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

10 đánh giá

4.3

10 đánh giá

  • seogaewon7688님의 프로필 이미지
    seogaewon7688

    Đánh giá 1

    Đánh giá trung bình 5.0

    5

    32% đã tham gia

    • dlrbcnvk님의 프로필 이미지
      dlrbcnvk

      Đánh giá 19

      Đánh giá trung bình 4.9

      5

      32% đã tham gia

      • 16267551265님의 프로필 이미지
        16267551265

        Đánh giá 9

        Đánh giá trung bình 4.9

        5

        32% đã tham gia

        • kfcwee9463님의 프로필 이미지
          kfcwee9463

          Đánh giá 8

          Đánh giá trung bình 5.0

          5

          100% đã tham gia

          • wildrabbit899998님의 프로필 이미지
            wildrabbit899998

            Đánh giá 1

            Đánh giá trung bình 5.0

            5

            32% đã tham gia

            716.781 ₫

            Khóa học khác của austinkim

            Hãy khám phá các khóa học khác của giảng viên!

            Khóa học tương tự

            Khám phá các khóa học khác trong cùng lĩnh vực!