RTOS 이제 시작합니다! - 제 2강. FreeRTOS 소프트웨어와 시스템 Task 구성

2018-05-18 10:30~11:50

전기전자 평생교육원 / 김동욱 대표

  • 강*완2018-05-18 오전 11:35:43

    항공기 제어장치,원자력발전소 제어장치등의 경우는,센서,전송,제어신호 발생 전송 과정에서,지체 시간을 극소화,ZERO화,피코초 지연시간 요구되는 task가 있으며,오류가 있는 경우,검출,복구까지 해야 됨으로,MCU에서의 대기시간은 허용이 않되는 경우가 있습니다.
  • RTOS2018.05.18

    말씀하신 어플리케이션이라면 불확실성을 하나라도 줄이기 위해 미세한 제어에 대해 개별적으로 하나씩 MCU를 할당하여 시스템을 만들어야 하지 않을까 생각합니다. 초기 화성 탐사선 이었던 패스파인더에 32-비트 64비트 MCU가 아닌 4004 CPU가 탑재되었다던 설처럼....^^
  • 김*신2018-05-18 오전 11:34:34

    세마포와랑 뮤택스 설명을 들어보면 큐로 두가지 기능을 대신 할 수 있어 보이는데 맞나요?
  • RTOS2018.05.18

    세마포어의 태스크 동기화는 큐로 100% 대체 가능합니다. 그래서 실제로 FreeRTOS는 세마포어에 대한 C 코드가 없습니다. 큐 소스를 매크로 함수 형태로 사용합니다. 뮤텍스는 공유자원에 대한 배터적(exclusively) 제어 권한을 위해 존재하는데, 이미 세마포어에 동일 기능이 있습니다. 다만, 우선순위 전도 문제 때문에, 세마포어 대신 뮤텍스를 사용하며 큐로 대체 불가합니다.
  • 정*근2018-05-18 오전 11:32:42

    예제도 같이 소개 되었으면 좋겠습니다 부탁 드립니다
  • e4ds2018.05.18

    이번 세미나에서는 시간 관계상 예제가 제공되고 있지 않습니다. 다음번 강의때 준비해 드리도록 하겠습니다. ^^ 감사합니다.
  • 신*호2018-05-18 오전 11:30:29

    mbed를 통해서 STM32 mcu에 freeRTOS를 포팅할 수 있나요?
  • e4ds2018.05.18

    아까 아래와 같은 내용정보를 주신 분이 계십니다. [정보] STM32 MCU를 사용하신다면, MXCUBE와 디스커버리 보드를 사용하시면, freeRTOS를 쉽게 포팅하고 테스트 해볼수 있습니다.
  • RTOS2018.05.18

    mbed는 online compiling 방식을 사용합니다. RTOS를 끼원 넣어 사용하는 방식이 아닙니다. 아두이오ㅗ아 비슷한 방식의 플랫폼이라고 보시면 됩니다.
  • RTOS2018.05.18

    아두이노는 non-OS 방식이며, 비전공자들이 쉽게 하드웨어 제어를 할 수 있도록 제작된 플랫폼입니다. 따라서 어느 한계에서는 분명 제약이 발생할 것이며, FreeRTOS와 같은 OS를 붙여서 사용하는 경우는 본적이 없습니다. 라즈베리 파이는 기본적으로 Linux가 올라가며, Linux는 촐발이 PC라 그 내부가 복잡하고, 그 태생자체가 워낙 범용성을 가지고 있기 떄문에, 어플리케이션 개발시 하드웨어 제어에 많은 레이어를 거치기 떄문에 기본적으로 H/W perfomrance및 메모리 자원이 많이 필요합니다. 라즈베리 파이에 RTOS를 올려도 무방합니다. 그렇게 할 경우, 비유하자면, 비행기 전세내서 혼자 타고 가는 것과 비슷하지 않을 까 생각합니다.
  • 임*식2018-05-18 오전 11:24:43

    https://www.freertos.org/ 가 언제 라이센스가 바뀌었어요?? 정말로 아마존이 인수후에 MIT라이센스이네요??? 그럼 기존의 GPL 라이센스 조항이었던것은 예를 들어 최근 freeROTS 10버젼을 사용하면 GPL조항 안따라도 되는걸까요?
  • e4ds2018.05.18

    요 부분은 FreeRTOS쪽에 문의를 해야 할것 같습니다. ^^;;; 저희가 답변드리기에는 무리가 있습니다. ^^;;
  • 김*신2018-05-18 오전 11:23:59

    [정보] STM32 MCU를 사용하신다면, MXCUBE와 디스커버리 보드를 사용하시면, freeRTOS를 쉽게 포팅하고 테스트 해볼수 있습니다. 걍 참고해주셔요.(홍보글 같은데... STM32 사용자입니다 ㅋ)
  • e4ds2018.05.18

    좋은 정보 감사합니다. 혹시 ST분은 아니시지요? ^^;;;;
  • 임*식2018-05-18 오전 11:23:04

    FreeRTOS에 가장 이상적인 c library 소개 부탁드려요. musclibc or dietlibc?
  • e4ds2018.05.18

    이 부분은 진행하시는 분들 마다 달라서요. Freertos 사이트 참조 부탁드립니다. ^^;;
  • 양*성2018-05-18 오전 11:22:53

    sleep api 호출시 지정한 시간동안의 task sleep을 보장하나요? sleep에 의해 sleep중인 task를 resume 시키는 api나 방법이 있나요?
  • RTOS2018.05.18

    MCU를 sleep시키면 MCU에서 실행하는 모든 코드 실행이 sleep 즉, stop됩니다. RTOS도 MCU에서 실행되는 것이므로 당연히 실행이 pause됩니다. 따라서 RTOS에 의해 sleep 상태로 들어간 task를 wakeup시킬수는 없습니다. 다만 특정 task의 실행을 잠시 중단 시키고 싶다면 suspend API를 호출합니다. suspend된 task는 resume API로 실행을 재개할 수 있습니다.
  • 박*희2018-05-18 오전 11:21:35

    오늘 강의는 시간이 긴듯해서 끝까지 보지는 못할 듯 하네요... rtos에 대한 좋은 설명 잘 들었습니다. 첫 강의를 못들어서 아쉬운데.. 다시보기로 꼭 보도록 하겠습니다..감사합니다~
  • e4ds12018.05.18

    방송종료 후 다시보기를 통해 재시청가능하십니다.
  • 양*성2018-05-18 오전 11:21:30

    test
  • e4ds2018.05.18

    TST 잘 되는 중입니다. ^^