728x90

MCU 5

[WSL] WSL ERROR_FILE_NOT_FOUND로 인해 Ubuntu 실행 불가 문제

Microsoft store에서 WSL을 설치하고 실행하니 아래와 같은 오류가 발생하였다. 'C:\Users\USER\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04LTS_79rhkp1fndgsc\LocalState\ext4.vhdx' 디스크를 WSL2에 연결하지 못했습니다. 지정된 파일을 찾을 수 없습니다.오류 코드: Wsl/Service/CreateInstance/MountVhd/HCS/ERROR_FILE_NOT_FOUNDPress any key to continue... WSL2의 ext4.vhdx 파일을 찾지 못했다고 한다.   WSL 등록해지 (cmd에서 진행)$ wsl --unregister ubuntu WSL 재설치 (cmd에서 진행)$ ..

MCU 2025.02.26

[WSL] WSL 18.04 32비트 바이너리 실행 환경 설정하기

리눅스 시스템에서는 멀티 아키텍처(Multiarch) 지원을 통해 64비트 시스템에서 32비트 바이너리를 실행할 수 있게 해줍니다. 멀티 아키텍처는 하나의 시스템에서 서로 다른 아키텍처의 바이너리를 동시에 실행할 수 있는 기능으로, 리눅스에서는 이를 `dpkg`와 `apt` 패키지 관리 도구를 통해 관리할 수 있습니다. 이를 통해 32비트 라이브러리와 패키지를 설치하고, 32비트 애플리케이션을 실행할 수 있게 됩니다. 현재 사용중인 하드웨어 아키텍쳐를 봅시다.$ uname -m `x86_64` → 64비트 아키텍처`i686` → 32비트 아키텍처`aarch64` → 64비트 ARM 아키텍처`armv7l` → 32비트 ARM 아키텍처저는 x86_64 환경에서 진행했습니다.  예를 들어 `make_ext4f..

MCU 2025.02.10

FreeRTOS ARM-M0 직접 포팅

5일동안 삽질하면서 ARM-M0 보드에 FreeRTOS를 포팅하는 과정과 오류를 정리하겠다.여기서 Keil 컴파일러를 사용하였지만 Keil Pack Installer에서 CMSIS-FreeRTOS를 설치하는 과정에서 오류가 생겨 직접 포팅하였다. 직접 포팅1. FreeRTOS-Kernel 다운로드 https://github.com/FreeRTOS/FreeRTOS-Kernel 에서 Kernel 파일을 가져와 프로젝트 파일에 넣어준다.Keil에서 본인 프로젝트에 Manage Project Itmes로 Kernel 파일 일부를 가져와야 된다. 2. Keil 프로젝트 구성공통 파일.\tasks.c.\list.c.\queue.c.\...(본인 선택)Keil - ARM_M0.\portable\RVDS\ARM_CM0..

MCU 2024.12.19

[MCU] Startup 코드란?

Startup Code는 글자 그대로 MCU의 시작을 의미한다. MCU의 전원을 켰을 때(Power-On Reset) 시작되는 / 실행되는 코드라는 것이다. 하드웨어와 소프트웨어 환경을 초기화하여 애플리케이션 코드가 실행될 준비를 한다. 이 코드는 시스템 운영의 기초가 되며, 주로 어셈블리 언어 또는 저수준 C 코드로 작성된다. Startup Code의 일반적인 동작 순서벡터 섹션 정의모든 인터럽트 비활성화초기화된 데이터를 ROM에서 RAM으로 복사초기화되지 않은 데이터 영역을 0으로 설정스택 공간 할당 및 초기화프로세서의 스택 포인터 초기화힙 공간 생성 및 초기화인터럽트 활성화main 함수 호출이 외에도 실행될 수 있는 몇 가지 명령어를 포함할 수 있고, 이는 main 함수가 종료되는 경우에만 실행된다..

MCU 2024.12.11
728x90