728x90
반응형
ARM
- C를 많은 운영체제에서 사용할 수 있는 이유는 누군가가 그 운영체제에서 사용할 수 있는 C 컴파일러를 만들었기때문
-
- C 자체가 이식성이 좋다기 보다는 C 컴파일러를 제공하는 곳이 많은 것
- cross compile 환경
-
- 다른 곳에서 동작시킬 실행파일을 컴파일해주는 환경
- 예) embedded 시스템에서 작동시킬 binary image를 PC에서 개발
- ARM 컴파일러/ ADS 설치
-
- 공유폴더에서 관련 파일 받아서 아래 과정을 실행
- ADS 최신버전으로 패치
- 예제 소스 찾기
-
- 구글에서 [ADS v1.2용의 C언어 예제 파일]검색
- 칩 제조사(atmel 등) 사이트로 가서 해당 칩 관련 파일을 다운로드
- 아래 그림은 atmel.com의 SAM7S 칩 관련 소스 파일을 찾는 과정
- 컴파일
- object file
-
- 어셈블리를 번역한 기계어
- 혼자서 완성된 형태는 아님
-
- 일종의 라이브러리로 linker를 이용해 다른 object들과 link될 수 있다
- 운영체제 등 환경에 따라 구조와 명칭이 다르다
-
- 윈도우 : PE 구조
- 리눅스 : ELF 구조
- coff 등등...
- 임베디드 시스템은 보통 ELF 구조를 많이 사용한다
- linker script file(.scl, .lds)
-
- linker가 사용하는 파일
- 실행파일을 메모리에 어떻게 배치할지에 대한 정보를 제공한다
- map 파일(.map, .sym)
-
- 메모리에 실행파일이 어떻게 배치되었는가에 대한 정보를 가진 파일
- 라이브러리 파일 까기
-
- armar 사용
- 옵션을 이용해 object 파일을 라이브러리로 만들거나 라이브러리를 확인하고 수정할 수 있음
- tcc 컴파일러 옵션
------------------------------------------------------------------------
Winsock
- 이전 리눅스 소스의 select() 함수 사용 적용
- 클라이언트 입장은 되는데 키보드 입력이 먹통
- select() 함수를 stdin에 적용할 수 없음
http://stackoverflow.com/questions/8773838/winsock2s-select-on-fd-0-stdin-fails
728x90
'코스웨어 > 15년 스마트컨트롤러' 카테고리의 다른 글
20151201 임현수 업무일지 ADS설치 (3) | 2015.12.02 |
---|---|
20151201_안향진_ARM어셈블리_3__WINSOCK_2 (4) | 2015.12.02 |
20151201 윤재희 컴파일에 대한 단상, ARM ADS 설치, 컴파일 공장 이야기, winsock 채팅 프로그램 (4) | 2015.12.01 |
20151201 - 홍준모 - 오전 : ARM 계의 비쥬얼 스튜디오(ADS) 깔기, .map .sym 의 필요성, 여러 다른 교양 내용 등등 (3) | 2015.12.01 |
20151201 업무일지 -여지윤- ARM Assembly, Winsock (3) | 2015.12.01 |
2015-12-01 ARM Assembly & WinSock Chatting 개인업무일지 - 천정호 (3) | 2015.12.01 |
20151201-김재홍-ARM_Assembly (3) | 2015.12.01 |
2015.12.01_[ARM #3][Winsock #2]_이량경_ARM ADS, socket (2) | 2015.12.01 |