Skip to content
/ lab2 Public

System Programmin 2 week Report

Notifications You must be signed in to change notification settings

Hyun-Jiii/lab2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lab2

System Programmin 2 week Report

  1. 사칙연산 (덧셈 add, 뺄셈 subtract, 곱셈 multiply, 나눗셈 divide) 에 대한 함수와 이 함수들을 이용하는 예제 프로그램을 각각 작성하고, 정적 라이브러리, 공유 라이브러리, 동적 라이브러리 방식을 각각 이용하여 예제 프로그램을 실행시킨 결과를 보이시오.

  2. 위 문제에 대하여, C 소스 파일들을 목적 파일로 만들고, 또한 이 파일들을 이용하여 라이브러리 또는 실행 파일로 만들어주는 Makefile을 작성하여 실행시켜 보시오. 이 때, 라이브러리 관련 파일들은 서브 디렉토리에 두도록 한다.

  3. Git 사용법을 정리한다.

  4. GDB와 DDD의 사용법을 정리하고, 2번 실습 예제의 GDB 및 DDD 테스트 결과를 나타내시오.

  5. perror() 함수 구현 : 라이브러리 함수인 assert() 함수와 동일하게 동작하는 my_assert() 함수를 구현하고, 이를 이용하여 예제 13에서 perror() 함수를 대체하여 프로그램을 실행해 보자.

  6. assert() 함수 구현 : 라이브러리 함수인 assert() 함수와 동일하게 동작하는 my_assert() 함수를 구현하고, 이를 이용하여 5장 예제 14에서 assert() 함수를 대체하여 프로그램을 실행해 보자.

  7. 위 1-2번 실습 문제의 프로그램에 대하여 gprof 프로파일링과 Valgrind 메모리 누수 디버깅을 적용하여 보시오.

  8. 두 행렬의 크기를 입력받아서 필요한 만큼의 메모리를 동적으로 할당하여 행렬의 내용을 저장하고 두 행렬을 더 하는 프로그램을 작성하시오.

  9. 학생 수를 입력받은 다음, 학생의 이름, 중간, 기말 점수를 기록하는 구조체를 학생 수만큼 동적으로 할당받아서, 이를 트리 구조체로 활용하여 트리 탐색을 할 수 있는 프로그램을 작성하시오.

About

System Programmin 2 week Report

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published