본문 바로가기
코스웨어/15년 스마트컨트롤러

20151202_[안향진]_ARM어셈블리_4__WINSOCK_3

by 알 수 없는 사용자 2015. 12. 3.
728x90
반응형

==========================================================================================

ARM 어셈블리

==========================================================================================


<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

==========================================================================================



<WINSOCK>




=채팅

stdin select 등록 불가

쓰레드 사용 해야함


*자바는 기본적으로 스레드로 구현된다


*WIN 메시지 처리 WINDOW OS는 폴링 WINMAIN은 인터럽트


=스레드 : 메인이 죽으면 같이 죽음

*멀티프로세스 : 각각 따로





HANDLE h = (HANDLE)_beginthreadex(NULL, 0, ServerProc, NULL, 0, (unsigned *)&dwID); //스레드 생성

  

WaitForSingleObject(h,INFINITE);  //스레드 종료를 기다림



728x90