==========================================================================================
==========================================================================================
<ARM 어셈블리>
=ELF
tcc -c : .o파일 생성/ link를 하지 말라는 의미 => relocatable file => 나중에 linker를 통해 재배치 가능
*NTFS제외한 파일 구조는 검색 가능
=readelf -h *.o
=권한 변경(파일 붙여넣기)
chmod 777 디렉토리이름
** Section #5 '.text' (SHT_PROGBITS) [SHF_ALLOC + SHF_EXECINSTR]
Size : 536 bytes (alignment 4)
LCD_command
$a
.text
0x00000000: e3a03bfd .;.. MOV r3,#0x3f400
0x00000004: e2433a40 @:C. SUB r3,r3,#0x40000
0x00000008: e3a01a40 @... MOV r1,#0x40000
0x0000000c: e5831034 4... STR r1,[r3,#0x34]
0x00000010: e1a01c00 .... MOV r1,r0,LSL #24
0x00000014: e5831030 0... STR r1,[r3,#0x30]
0x00000018: e1e01000 .... MVN r1,r0
0x0000001c: e1a01c01 .... MOV r1,r1,LSL #24
0x00000020: e5831034 4... STR r1,[r3,#0x34]
0x00000024: e3a0ca80 .... MOV r12,#0x80000
0x00000028: e583c030 0... STR r12,[r3,#0x30]
0x0000002c: e3a02000 . .. MOV r2,#0
0x00000030: e1a01002 .... MOV r1,r2
0x00000034: e2811001 .... ADD r1,r1,#1
0x00000038: e3510004 ..Q. CMP r1,#4
0x0000003c: 3afffffc ...: BCC {pc} - 0x8 ; 0x34
0x00000040: e583c034 4... STR r12,[r3,#0x34]
0x00000044: e31000fc .... TST r0,#0xfc
0x00000048: 03a00d96 .... MOVEQ r0,#0x2580
0x0000004c: 0a000005 .... BEQ {pc} + 0x1c ; 0x68
0x00000050: e3a000fa .... MOV r0,#0xfa
0x00000054: e1520000 ..R. CMP r2,r0
0x00000058: 32822001 . .2 ADDCC r2,r2,#1
0x0000005c: 3afffffc ...: BCC {pc} - 0x8 ; 0x54
0x00000060: e1a0f00e .... MOV pc,r14
0x00000064: e2822001 . .. ADD r2,r2,#1
0x00000068: e1520000 ..R. CMP r2,r0
0x0000006c: 3afffffc ...: BCC {pc} - 0x8 ; 0x64
0x00000070: e1a0f00e .... MOV pc,r14
main
==========================================================================================
==========================================================================================
<WINSOCK>
=채팅
stdin select 등록 불가
쓰레드 사용 해야함
*자바는 기본적으로 스레드로 구현된다
*WIN 메시지 처리 WINDOW OS는 폴링 WINMAIN은 인터럽트
=스레드 : 메인이 죽으면 같이 죽음
*멀티프로세스 : 각각 따로
=
HANDLE h = (HANDLE)_beginthreadex(NULL, 0, ServerProc, NULL, 0, (unsigned *)&dwID); //스레드 생성
WaitForSingleObject(h,INFINITE); //스레드 종료를 기다림
'코스웨어 > 15년 스마트컨트롤러' 카테고리의 다른 글
20151207-김재홍-Serial_1일차-리눅스시리얼통신 (5) | 2015.12.07 |
---|---|
20151202 22번 우대희 업무일지 (7) | 2015.12.03 |
20151202_박서연_일일업무보고서_ARM Assembly, WinSock (5) | 2015.12.03 |
20151202 김태현 개인업무일지 (5) | 2015.12.03 |
20151202 임현수 업무일지 ELF파일 포맷, 스레드 (4) | 2015.12.03 |
20151202 강동조 개인업무일지 (5) | 2015.12.02 |
20151202 윤재희 Memory Map과 Symbol 이야기, ELF format Object File에 관한 진실. -c option (기계어 세상), 멀티쓰레드 (5) | 2015.12.02 |
20151202-김재홍-ARM_Assembly (4) | 2015.12.02 |