
리눅스 필수 유틸리티 4종 마스터 - awk, sed, grep, find
홍영기
쉘 스크립트를 공부하셨다면, 다음 단계는 find, grep, sed, awk 명령어를 효과적으로 사용하기 위한 학습이 필요합니다. 이 명령어들의 활용 방법을 알기 위해 더 이상 구글 검색하지 마세요.
중급이상
Linux, Shell Script
Do you believe that simply using an RTOS ensures real-time processing? Watch this lecture to confirm. We'll provide insights into tricky interrupts, priorities, mutual exclusion, and porting.

How to implement hard real-time
Operating interrupts reliably and efficiently
Overcoming system performance degradation caused by frequent mutual exclusion
How to make task prioritization decisive
Test if my task runs in real-time.
Porting Know-how
FreeRTOS summarized in one lecture!
Check out everything from concepts to practical know-how.
RTOS is an abbreviation for real-time operating system .
So that you can get the work done within a limited time.
It is an operating system that has been created.
RTOS is an operating system developed for real-time applications. It is used in embedded products in various fields including automotive, home appliances, medical, aerospace, defense, industrial control, and automation, as well as in environments where high performance and reliability are essential .
Even tasks requiring high levels (Hard-Realtime) can process results within a limited time through a real-time operating system.
As it is applied to various fields, RTOS also has various types and license forms. FreeRTOS is the best real-time operating system (RTOS) for microcontrollers and small microprocessors. FreeRTOS source code is distributed free of charge, so you can download FreeRTOS and start developing.
FreeRTOS is typically flashed into memory as a single image compiled with all the components needed for an embedded application.
Regardless of the microprocessor used, embedded application developers can use the same standardized interface to the FreeRTOS kernel and all FreeRTOS software libraries.
The FreeRTOS kernel is designed to be small, simple, and easy to use. A typical RTOS kernel binary image size is 4-9K bytes .
In general, FreeRTOS-based applications have the advantage of being much simpler than Linux-based systems.
Freeertos.org provides a series of detailed tutorials and guides on using the FreeRTOS kernel, including a quick start guide (click) . By supporting tickless interrupts, the microcontroller can remain in a DEEP SLEEP sleep state until an interrupt occurs or the RTOS kernel switches the task to a ready state.
Amazon has implemented a number of software libraries based on the FreeRTOS kernel that enable IoT devices to securely connect to its cloud . When Amazon FreeRTOS is deployed on IoT devices, they can securely connect to cloud services such as AWS IoT Core and be updated remotely using the OTA update feature.
It is a well-known fact that FreeRTOS has a free and source code-based kernel .
So what's the real benefit of having access to the kernel's source?
The fact that the kernel I use provides source code means that users can look into its contents whenever they want. However, if our ultimate goal is to drive a car called RTOS well, wouldn't it be more helpful for me to spend more time and effort on things like following turn signals, complying with crosswalk safety obligations, observing the rearview mirrors, and not accelerating too quickly, rather than focusing on learning the structure or principles of internal combustion engine vehicles?
You can also analyze the kernel source code to improve the kernel performance, but I can't recommend it because every code modification comes with responsibility. Rather, I think it is valuable to find and fix problems in my application by using the kernel source code, or to gain a better understanding of how the kernel works.
From now on, we will summarize the essential information that we need to know to properly operate a car called FreeRTOS.
All of the above are the core topics of this lecture. Now, let's get into the details.
Even if you build a house with the same materials, a house built by a certain carpenter will be safe and not shaken by strong winds or water leaks, while a house built by another carpenter will drip from the ceiling even when it rains a little, and in the winter, it will not be well insulated and will result in high heating costs. What is the difference? Just because you use an RTOS does not automatically guarantee the real-time performance of the program or product you create. This applies not only to FreeRTOS, but to all RTOSes. This lecture will teach you what efforts are needed to guarantee or achieve hard real-time.
We will look at examples of how our stereotypes can negatively impact the products or programs we create, and explore solutions to address them.
Wait a minute. You know that Mutex causes system performance degradation, right? Let's find out how to compensate for it or find an alternative.
Anyone who has ever tried to prioritize tasks knows that it can be difficult. I will talk about the pitfalls of giving high priority to important tasks and suggest alternatives.
If necessary, you may need a measuring instrument or equivalent equipment in addition to a debugger. Of course, you can develop and test without these equipment, but it will be easier to identify problems and prepare countermeasures. I will tell you how to check whether the task I created is running in hard real time.
When the hardware performance of the product I made is upgraded, it naturally requires porting work. I will share my long-time experience and know-how so that I can port the kernel myself without the help of others.
I created this course with your time as precious as my own.
After 13 years of teaching RTOS on-site, I decided to create online lectures to meet more learners. I will meet you as an online lecture that optimizes the content of 4 days of on-site lectures into 8 hours .
First time with RTOS
Beginner learning
For FreeRTOS based products
For those who are thinking about optimization
Lightweight OS for the product
Those who wish to apply
IoT (Internet of Things)
developer
👉 For those who want to kill two birds with one stone: hard real-time and stability of the product
👉 For those who want to compare and review with the Linux operating system
👉 Anyone who wants to increase their understanding of the operating system
👉 For those who do not have time to attend offline classes
Please check your player knowledge!
Main history
etc
Q. Can someone who doesn't know the C language take this course?
This course is good for engineers as well as non-majors and those interested in RTOS embedded products. However, if you do not know the C language, you may have difficulty understanding the parts related to practical training in class.
Q. Can intermediate level students also take this course?
The course is designed to cover not only those who are new to RTOS but also intermediate users who are already using RTOS. With 15 years of experience teaching RTOS programming at Seoul National University, Samsung Electronics, LG Electronics, Hyundai Mobis, LS Industrial Systems, and the Agency for Defense Development, I have covered the difficult parts and important topics of RTOS programming in depth.
Q. Do you also cover the Internet of Things (IoT) as a class topic?
FreeRTOS is used in a variety of IoT devices, but this course focuses on one topic: the RTOS kernel.
Q. There are various types of STM32 boards for practice. Is any of them okay?
In the video, the class is currently conducted based on the STM32 Nucleo64 f103rb board.
If you want to practice on a different STM32 board, watch the video '(Appendix) Follow the lecture with my Nucleo board' and then modify the source code of the practice example file (freeRTOS_tutorials) to fit your desired board and use this lecture, or ask the instructor to modify the source code to fit your desired board (free of charge. Usually takes 1-2 days. Apply in the Q&A corner.)
Q. Is FreeRTOS any good?
That's a very good question. And a difficult one. I have 12 years of experience developing embedded systems, and my experience spans firmware, RTOS, and embedded Linux.
To the question of which OS is better, I have prepared the following official answer:
(1) Free/Paid (2) Source code/Binary (3) Has many users (4) Development environment support
These are the important factors to consider when choosing an RTOS.
FreeRTOS gets almost full marks for items 1, 2, and 3 above. I wouldn't say FreeRTOS is the best OS, but I would at least recommend it.
Q. I am using VxWorks. Will this course help me?
Although the course title is FreeRTOS Programming, this course is designed to focus on the essence (core) of RTOS. Also, as you can see from my resume, I have already used various RTOSs.
This lecture covers the common knowledge that you need to know, frequently used skills, and misunderstandings or prejudices that users tend to have, regardless of the RTOS you use. I believe you will find it helpful.
Please check before taking the class! (License)
Linux Shell Script Master
Linux Shell Coding
Experience powerful features.
Who is this course right for?
RTOS beginner
Those wishing to apply lightweight OS to products.
Those needing Operating System study.
For FreeRTOS-based product optimization concerns
Product hard real-time and stability seekers.
Need to know before starting?
C language
3,309
Learners
234
Reviews
270
Answers
4.7
Rating
5
Courses
인하대학교 공과대학에서 전자공학 학사 학위를 받았으며 임베디드 시스템용 소프트웨어 개발자로써 수년간의 경력을 쌓았습니다. 임베디드 시스템 및 프로그래밍을 위한 전문 강사로도 활동 중입니다. 아이폰 3GS 등장과 같은 시기에 맥(북)에 입문하였고, 그때부터 맥(북) 자동화에 관심을 갖게 되었습니다. '맥(북)에서 사용할 수 있는 시리 리모트', '키보드마에스트로를 이용한 구글번역기' 같은 오픈 소스를 깃허브(https://github.com/guileschool) 에 두고 개발 및 유지보수하고 있습니다. 오픈 소스 하드웨어 '비글본블랙' 에도 많은 관심을 가지고 있습니다. 맥(북) 자동화를 이용하여 생산성을 높일 수 있는 컴퓨터를 사용하는 모든 분야에 관심을 가지고 있고, 이를 필요로 하는 사람들을 돕고 있습니다.
강의 요청 및 기타 문의사항은 guileschool@gmail.com으로 보내주세요 :)
All
206 lectures ∙ (9hr 21min)
Course Materials:
6. Task
02:13
8. Task status
01:34
9. What is a kernel?
01:08
10. Preemptive kernel
03:28
13. Priority scheduling
03:42
14. Interrupt
02:58
15. Blocking IO
03:31
16. Non-blocking IO
04:26
17. The Kernel Clock
02:06
18. An RTOS is:
05:33
20. Types of RTOS
04:13
23. Task type
01:58
24. Porting - Start
01:02
30. Porting - CMSIS
00:59
33. Porting - printf
04:08
34. Porting - LED On
00:20
All
77 reviews
4.8
77 reviews
Reviews 1
∙
Average Rating 5.0
Reviews 4
∙
Average Rating 5.0
5
FreeRTOS의 주요 기능을 아주 쉽게 실습할 수 있도록 실습 파일과 강의 영상에 엄청난 정성이 들어가 있습니다. 일반인이 시중에서 접할 수 있는 최고의 FreeRTOS 강의가 아닐까 싶습니다. 집중해서 들어야 하는 부분과 그렇지 않은 부분을 명확하게 구분해주시고, 다양한 사례를 들어서 설명해주셔서 이해하기 정말 쉬운 강의입니다. 졸업 프로젝트에서 FreeRTOS를 활용할 때 레퍼런스 문서를 n회독 하며 얼마나 고생했는지 생각납니다. 이 강의를 좀 더 빠르게 만났더라면 좋았을 걸 이라고 생각했습니다. 좋은 강의 제공해주셔서 정말 감사합니다.
Embedded June님! 프로그래밍 언어에서 반복되는 부분은 루프문이나 함수로 만들듯이, 10여개 정도되는 실습 예제에서 반복적으로 사용되는 소스파일, 그리고 내가 보고싶은 소스(eg. task.c, FreeRTOSConfig.h)를 빠르게 확인할 수 있도록 주의를 기울였습니다. 그 부분이 도움이 되셨다니 오히려 제가 감사합니다. 더욱 알찬강의로 다시 뵙기를 원합니다 ㅎㅎㅎ~~
Reviews 3
∙
Average Rating 5.0
Reviews 1
∙
Average Rating 5.0
Reviews 2
∙
Average Rating 5.0
5
RTOS에 평소 관심이 있었는데, 기회가 되어서 ARM Cortex-M 강의에 이어 freeRTOS 강의를 듣게 되었습니다. 태스크, 세마포어, 뮤텍스 등에 대해서 자세히 알 수 있고, 실습을 통해 더 확실하게 익힐 수 있어 좋았습니다. 또한, MP3 Player 등의 여러 예시들을 통해 어떻게 해당 기능들을 활용하고 응용할 수 있는지 설명해주셔서 좋았습니다. 다만, 아쉬운 점이 있다면, 몇몇 강의가 좀 부드럽지 못하다는 느낌을 받았습니다. 말하는 도중에 강의가 끝나기도 하고, 어떤 강의는 이론 없이 실습부터 시작하여 당황하기도 하였습니다. 하지만, 이런 영상은 많지 않고 강의를 다시 보면 이해를 하고 넘어갈 수 있었습니다. 추석 때 몰아서 강의를 듣느라 100% 이해를 못한 부분이 있는데, 여러 번 강의를 들으며 다 이해하고 넘어가도록 해야겠습니다. 좋은 강의 올려주셔서 감사합니다!
$144.10
Check out other courses by the instructor!
Explore other courses in the same field!