Microsoft PowerPoint - System Programming Lab Week1.ppt [호환 모드]

Similar documents
강의10

vi 사용법

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

PRO1_09E [읽기 전용]

gdb 사용법 Debugging Debug라는말은 bug를없앤다는말이다. Bug란, 컴퓨터프로그램상의논리적오류를말하며, 이것을찾아해결하는과정이바로, debugging이다. 초기컴퓨터들은실제벌레가컴퓨터에들어가서오작동을일으키는경우가있었다고하며, 여기서 debug 이라는말이

hlogin2


vi 사용법

개발도구

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

<4D F736F F F696E74202D20C1A632C0E520C7C1B7CEB1D7B7A5B0B3B9DFB0FAC1A4>

Microsoft PowerPoint - o8.pptx

슬라이드 제목 없음

JVM 메모리구조

Microsoft PowerPoint - u4.pptx

hlogin7

Microsoft PowerPoint - chap-02.pptx

Microsoft PowerPoint APUE(Intro).ppt

작성자 : 기술지원부 김 삼 수

PowerPoint 프레젠테이션

PRO1_02E [읽기 전용]

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

The_IDA_Pro_Book

Sena Technologies, Inc. HelloDevice Super 1.1.0

No Slide Title

PowerPoint 프레젠테이션

매력적인 맥/iOS 개발 환경 그림 A-1 변경 사항 확인창 Validate Setting... 항목을 고르면 된다. 프로젝트 편집기를 선택했을 때 화면 아 래쪽에 있는 동일한 Validate Settings... 버튼을 클릭해도 된다. 이슈 내비게이터 목록에서 변경할

Week3

Microsoft PowerPoint - chap-02.pptx

C# Programming Guide - Types

Chap06(Interprocess Communication).PDF

Microsoft PowerPoint - 15-MARS

Microsoft PowerPoint oshw1.ppt [호환 모드]

화판_미용성형시술 정보집.0305

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3

슬라이드 1

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

IDA 5.x Manual hwp

컴파일러

제4장 기본 의미구조 (Basic Semantics)

PowerPoint 프레젠테이션

Deok9_Exploit Technique

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

Microsoft PowerPoint - chap01-C언어개요.pptx

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

6주차.key

CD-RW_Advanced.PDF

Visual Studio online Limited preview 간략하게살펴보기

휠세미나3 ver0.4

Orcad Capture 9.x

Microsoft Word - FunctionCall

슬라이드 1


PowerPoint 프레젠테이션

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

Interstage5 SOAP서비스 설정 가이드

1. 도구개요 Implementation Eclipse CDT 소개 CDT(C/C++ Development Toolkit) 는 Eclipse plug-in 중하나로 C/C++ 개발을위한통합개발환경 (IDE : Integrated Development Environmen

PowerPoint 프레젠테이션

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

chap 5: Trees

untitled

Ä¡¿ì³»ÁöÃÖÁ¾

쉽게 풀어쓴 C 프로그래밍

2014밝고고운동요부르기-수정3

2005프로그램표지

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

MAX+plus II Getting Started - 무작정따라하기

슬라이드 1

GDB를 이용한 디버깅

INTRO Basic architecture of modern computers Basic and most used assembly instructions on x86 Installing an assembly compiler and RE tools Practice co

U.Tu System Application DW Service AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형

Chapter 4. LISTS

Microsoft Word - ExecutionStack

untitled

untitled

Abstract View of System Components

Microsoft PowerPoint oshw1&2.ppt [호환 모드]

MPLAB C18 C

Microsoft PowerPoint oshw1.ppt [호환 모드]

자식농사웹완


표1.4출력

003-p.ps

중앙도서관소식지겨울내지33

표1~4


chungo_story_2013.pdf

*중1부

2

Çѱ¹ÀÇ ¼º°øº¥Ã³µµÅ¥

...._


전반부-pdf

<4D F736F F F696E74202D20312E20B0E6C1A6C0FCB8C15F3136B3E2C7CFB9DDB1E25F325FC6ED28C0BA292E >

_

12월월간보고서내지편집3

에너지포커스 2007년 가을호


01_당선자공약_서울

Transcription:

System Programming Lab Week 1: Basic Skills for Practice

Contents vi Editor 사용법 GCC 컴파일러사용법 Makefile 사용법 GDB 사용법

VI Editor Usage vi 모드 입력모드 : 실제문서를편집하는모드. 명령모드 : 키입력이바로명령이되는모드로서쓴내용을삭제하거나, 복사할때사용. ex 명령모드 ( 콜론모드 ) : 문서의저장, 종료등의명령모드. vi 시작과종료 시작 vi file vi 를시작하여지정한파일편집 vi -R file, view file 읽기전용 (read-only) 편집기로서 vi 를시작하여지정 한파일편집 종료 :wq 데이터를저장하고종료 :q! 데이터를저장하지않고종료

VI Editor Usage vi 기본명령어 [1] 삽입 i 입력모드로전환, 커서위치앞에서삽입 I 입력모드로전환, 현재줄의앞에삽입 a 입력모드로전환, 커서위치뒤에서삽입 A 입력모드로전환, 현재줄의끝에삽입 o 입력모드로전환, 현재줄의아래에전개 O 입력모드로전환, 현재줄의위에전개 문자삭제 x 커서가있는문자삭제 X 커서의왼쪽문자삭제 dd 현재줄의전체삭제 D 커서부터줄의끝까지삭제

VI Editor Usage vi 기본명령어 [2] 데이터저장하기 :w 원래의파일로데이터를저장 :w>>file 지정한파일에데이터를추가 :w file 지정한파일로데이터를저장 검색 / 이전의패턴에대해앞으로검색을반복 n 명령에대해같은방향으로반복

VI Editor Usage vi 기본명령어 패턴에의한치환 :s/pattern/replace/ 현재줄의치환 :[line]s/pattern/replace/ / l / 지정한줄의치환 :[line],[line]s/pattern/replace/ :%s/pattern/replace/ 지정한범위의치환 모든줄의치환 고치기의취소또는반복 U U 편집버퍼를수정했던마지막명령어취소 현재줄을저장. 편집버퍼를수정했던마지막명령어반복

GCC Compiler Usage GCC object file 생성 gcc c file.c executable file 생성 gcc o target_file object_file1 object_file2

Makefile Example 8

Gdb Usage Gdb(GNU Debugger) 란? 어떤프로그램이수행되는도중그프로그램내에서어떤일이일어나는지를볼수있게해준다 Gdb 기능 프로그램을수행시킨다 어떤특별한조건에서프로그램의수행을 stop시킨다 프로그램이 stop 된상태에서그프로그램의내부를볼수있다 프로그램의일부분을수정한다 Stop된프로그램을 continue시킨다 9

Gdb Starting & Termination 디버깅하기위한컴파일옵션 $ gcc g prog.c Gdb 시작 - Gdb prompt "(gdb)" 가나옴 $ gdb process 특정프로그램을디버깅 $ gdb process_core 특정프로그램및 core 파일을디버깅 $ gdb process_pid 현재수행중인프로그램 ( 프로세스번호 ) 를디버깅 $ gdb --args proc_arg1 proc_arg2... 인수를사용하는프로그램을디버깅 Gdb 종료 quit 혹은 q 혹은 ^D 10

Gdb Running Target Program 프로그램 run run 혹은 r 인수를사용하는프로그램 run run arg1 arg2 이미수행중인프로세스디버깅시작및종료 attach pid detach 11

Gdb Breakpoint Setting Breakpoint 란? 프로그램의수행을정지시키는지점 특정함수에 breakpoint 설정 break function 혹은 break filename:function 프로그램소스줄에 breakpoint 설정 break linenum 혹은 break filename:linenum 현재위치에서상대적위치에 breakpoint 설정 break +offset 혹은 break -offset 조건 breakpoint 설정 break... if cond breakpoint 설정지점보기 info breakpoints 12

Gdb Watchpoint Setting Watchpoint 란? 특정식의값이변경되거나읽혀질때프로그램의수행이 stop하는특별한 breakpoint 프로그램에의하여특정변수가쓰여지면 (write) breakpoint 형성 watch 변수 프로그램에의하여특정변수가읽혀지면 (read) breakpoint 형성 rwatch 변수 특정변수가써지거나 (write) 혹은읽혀지면 (read) breakpoint 형성 awatch 변수 설정된 watchpoint 보기 info watchpoints 13

Gdb - continue, step, until, finish stop 된프로그램의수행 continue [ignore-count] c [ignore-count] stop 된프로그램의한단계혹은 n 단계수행 step step n 프로그램의특정지점까지수행하고 stop until location u location 현재수행중인함수의수행을끝내고 stop finish

Gdb Stack Tracing 스택전체보기 backtrace 혹은 bt backtrace n 혹은 bt n 스택프레임의선택 up n // 오래된프레임방향으로 down n // 최근프레임방향으로 현재선택된프레임정보보기 info frame info f

Gdb Source File Handling 소스라인프린트 list linenum list function list list 소스파일편집 edit number edit filename:number edit function edit filename:function

Gdb Data Verification 변수값보기 print 변수 print /f expr //f 는 format( 예 : /d /o /x) info locals // 지역변수들정보출력 info variables // 전역변수들정보출력 메모리값보기 x addr x /nfu addr // n 은갯수, f 는 format, u 는단위 ( 예 : b, h. w) register 값보기 info registers // register 이름보기 (floating-point 제외 ) info all-registers // register 이름보기 print $register

Gdb Symbol Table Verification 심볼주소보기 info address symbol 주소에있는심볼이름보기 info symbol address expression 의 type 보기 ptype pyp expr 어떤함수내의모든심볼이름보기 info scope function

Gdb Program Modification 변수값수정 print x=4 다른곳으로 jump jump linespec jump *address 프로그램에 signal 보내기 signal signal 함수부르기 call expr 함수에서 return return expr