공부,일/임베디드 스케치4 임베디드 스케치 3장 -2 링커스크립트 (Linker Script) - 각각의 오브젝트 파일을 어떻게 하나로 모아 바이너리 파일로 만들지 알려주는 역활을 합니다. 임베디드에서 대표적으로 메모리는 4가지 영역으로 나누어지는데 코드 영역, 데이타 영역, 힙 영역, 스택 영역 이다. 2021. 9. 3. 임베디드 레시피 3장 크로스 컴파일러 보통의 컴파일러는 실행하는 컴퓨터와 컴파일하는 컴퓨터가 동일하다 하지만 임베디드 환경에서는 컴파일하는 곳과 실행하는 컴퓨터가 상이하다. 때문에 특별한 컴파일러가 필요하고 이를 크로스 컴파일러라고 푸른다. 이러한 차이는 pc 에서 쓰는 cpu 와 임베디드에서 사용하는 cpu 가 달라서 똑같은 기능을하는 실행파일( 바이너리파일) 이라도 cpu 에 따라서 다르게 생성되기 때문이다. 크로스 컴파일러가 실행되는 과정 결국 .c 파일과 .S 파일로 만들어진 오브젝트 라일을 통해서 링킹 작업을 통해 ,elf(실행파일) 을만든다. ( 어셈블 언어로는 C 언어에서는 처리하지 못하는 부분을 해준다. 스택 만들기 메모리 segment 등등 ) elf 파일은 -> 디버깅을 위한 파일이다. 디버깅을 위한 타겟의.. 2021. 9. 2. 인베디드 레시피 -2 , 시스템 hardware 구성요서 플레시 메모리 1. Nor Flash : 주소를 가지고 있어서 , flash 메모리에서 실행코드를 바로 실행 하능하다. 2. Nand Flash : 주소를 가지고 있지 않아서 sdram 으로 실행코드를 가지고 와서 실행 해야 한다. sdram 에 가지고 오기 위해서 부트로더와 인터널램이 필요하다 . 시피유에서 낸드를 사용할때 부트로더를 인터널램에 올리고 , 인터널램에 있는 부트로더를 시피유는 실행한다. 이 실행에서 낸드의 바이너리 파일이 sdram 에 올라오는 것이다. 또한 낸드는 주소가 없기 때문에 읽고 ,쓰고 지우기 기능을 할때 자신만의 특수한 체계를 따른다. page 와 블록인데 블록은 여러개의 페이지으로 구성되어 있고 , 1개의 페이지는 256byte ~ 4kbyte 까지 다양한다. arm cup.. 2021. 9. 2. 인베디드 관련 공부 사이트 http://recipes.egloos.com/ 임베디드 레시피 친절한 임베디드 개발자되기 강좌 recipes.egloos.com http://recipes.egloos.com/5207842 임베디드 레시피 친절한 임베디드 개발자되기 강좌 recipes.egloos.com https://open-support.tistory.com/entry/%EC%9E%84%EB%B2%A0%EB%94%94%EB%93%9C%ED%8E%8C%EC%9B%A8%EC%96%B4-%EA%B4%80%EB%A0%A8-%EA%B0%95%EB%A0%A5-%EC%B6%94%EC%B2%9C%ED%95%98%EB%8A%94-%EC%B1%85-2%EA%B6%8C?category=1178118 2021. 9. 1. 이전 1 다음