Share/OS
-
임베디드 OS개발 프로젝트(CH6)Share/OS 2025. 5. 24. 23:36
Intro임베디드 시스템 개발에서 UART를 통한 입력/출력은 거의 필수다. 특히 인터럽트 기반으로 입력을 처리하면 불필요한 polling 없이 효율적인 시스템 운영이 가능하다.이 글에서는 ARM Cortex-A + GIC 기반의 베어메탈 환경에서, UART RX 인터럽트를 통해 입력을 처리하는 흐름을 함수, 구조체, 동작 순서 중심으로 정리한다. RTOS 없이 순수 bare-metal 환경에서 인터럽트를 어떻게 구성하는지, 시스템-장치 간 흐름을 이해하고 싶은 개발자라면 도움이 될 것이다.예를 들어, 두 개의 MCU가 UART를 통해 서로 데이터를 주고받는 상황을 생각해보자.이때 양쪽 모두 인터럽트 기반 통신 방식을 사용한다면 다음과 같은 흐름이 이뤄진다:UART RX 인터럽트를 활성화하고HAL 계층에..
-
[error] arm-none-eabi-gdb install 설치에러Share/OS 2024. 9. 17. 15:14
Trial & Error sudo apt install gdb-arm-none-eabi Result >E: Unable to locate package gdb-arm-none-eabi Solution> 1. https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads Downloads | GNU Arm Embedded Toolchain Downloads – Arm DeveloperDownload the GNU Embedded Toolchain for ARM, an open-source suite of tools for C, C++, and Assembly p..
-
macOS pip 설치오류 해결 (invalid syntex)Share/OS 2021. 12. 20. 13:40
https://programmerah.com/solved-failed-to-install-pip-for-macos-prompt-syntax-error-invalid-syntax-41653/ [Solved] Failed to install PIP for MacOS, prompt: syntax error: invalid syntax | ProgrammerAH Use the command easy_ Install install pip Use the command sudo easy_Install PIP installing PIP failed. The information of executing the command is as follows: ➜ ~ sudo easy_install pip Password: Sea..
-
[error] apt-get update 에러 , apt install net-tools 설치 에러, could not get lock /var/lib/dpkg/lockShare/OS 2021. 11. 23. 11:18
상황 초기 세팅된 ubuntu 18.04 환경에서 apt install net-tools 를 시도 설치 되지않고, update하라고 해서 다시 update시도했으나, 설치 실패 error --> could not get lock /var/lib/dpkg/lock 해결 두가지 에러존재 1. apt-get update 2. apt install net-tools 1. apt-get update 아래 dns-nameserver와 nameserver를 추가를 해주면 정상적으로 작동 $ sudo vi /etc/network/interfaces //(아래한줄 작성추가) dns-nameservers 8.8.8.8 8.8.4.4 $ rm /etc/resolv.conf $ sudo vi /etc/resolv.conf /..
-
VirtualBox 해상도 및 복사붙여넣기 에러 (could not get lock dpkg ) dpkg 오류Share/OS 2021. 10. 1. 10:47
문제점 1. virtual disk 설치를 해도 반응이 없음 (사실 에러메세지를 보면 설치가 제대로 되지 않았다고 나옴) 2. 이로인해 창을 조절할때 자동 조절 기능이 안생겨서 조그마한 창으로 작업을 해야됨 3. virtualbox - devices - insert Guest Additions CD images 를 눌러도 설치가 잘 안됨 해결 직접 터미널에서 버추얼박스 게스트 유틸을 설치함 sudo apt install virtualbox-guest-utils virtualbox-guest-dkms 기타 간혹 아래와 같은 에러 종류가 뜨는데 (dpkg관련 에러 ), 현 dpkg lock부분을 다 지우고 확인 하면 됨 E: Could not get lock /var/lib/dpkg/lock-frontend..
-
임베디드 OS 개발 [8,9,10장] 요약Share/OS 2021. 3. 27. 21:03
*이만우 선생님의 임베디드OS 개발 프로젝트 책을 기반으로 요약하였습니다. 목표 지난 시간까지 해왔던 작업들 태스크 생성 및 태스크 컨트럴 블럭 초기화 스케쥴러 만들기 컨텍스트 스위칭 백업/복구 그리고 커널 시작 지난시간까지 했던것들 아~주 간단하게 정리하자면 하드웨어 (ARM x86)기반의 펌웨어가 이루어지는 과정을 작성해가고있다. 지금까지는 타이머, uart 등을 포함하여 qemu를 이용하여 arm의 register 및 memory map 을 구조체로 추상화하여 직접 메모리에 접근하여, HAL_Library 등을 만들어서 main에서 함수를 호출하여 작성할 수 있도록 비슷~한 프로세스를 밟아가고 있었음. 이때 makefile을 수정하여 sp(Stack Pointer)가 변화되는 과정을 직접 실습하면서..
-
임베디드 OS 개발 [5장]Share/OS 2021. 3. 6. 17:36
www.yes24.com/Product/Goods/3337559 도전! 임베디드 OS 만들기 운영체제의 원리는 얼마나 복잡할까? 이 책은 작고 간단한 임베디드 운영체제를 만들어 보면서 운영체제의 원리를 익힐 수 있도록 구성한 책으로, 운영체제라는 것을 크고 복잡하고 어렵고 범 www.yes24.com 본글은 위의 책을 참고로 개인적으로 정리하고 느낀점위주로 작성하였습니다. 저자분의 노고에 감사드립니다. 5장 UART 1. UART를 사용하기 위해서 가장 먼저 해야될일은 UART하드웨어의 레지스터를 코드로 만드는 일 - 그렇다면 spi나 LVDS 등은 당연하겠거니와, BLE나 WIFI처럼 무선칩에 대해서도 그러하겟네? - 이런걸 드라이버 코드를 만든다 하는것인가 ? - 그러면 STM32 같은경우는 HAL ..
-
임베디드 OS 개발프로젝트 [4장]Share/OS 2021. 3. 3. 22:01
*이만우 님의 임베디드 OS 개발프로젝트 책을 보고 실습한 과정입니다. 개인적으로 느낀점과 요약을 중점으로 작성하였습니다. 저자분께 감사의 말씀을 드립니다. www.aladin.co.kr/shop/wproduct.aspx?ItemId=221593471 임베디드 OS 개발 프로젝트 펌웨어 개발 과정을 실시간 운영체제(RTOS)를 만들어 가며 설명한다. 임베디드 운영체제를 개발 환경 구성에서 시작해 최종적으로 RTOS를 만드는 과정(부트로더 제작, 하드웨어 제어, 태스크 간 동 www.aladin.co.kr 4장. 부팅하기 서론 부팅한다는 것이 무엇일까. 그냥 컴퓨터 전원 켜듯이, 전자제품의 전원을 넣으면 시간이 조금 흐르면 원하는 화면이 뜨는 것 ?! 이라고 생각 할 수 있다. 그러면 조금더 깊이 기술적으..