시스템프로그래밍
-
시스템 호출1 : open(), close(), read(), write() 연습문제 01-01. 명령줄 인수로 받은 텍스트 파일 내의 문자의 수와 단어의 수와 줄의 수를 출력하는 프로그램을 작성한다. 명령줄 인수가 없는 경우, 표준입력에서 받은 내용을 대상으로 한다. 쉘 명령어 wc와 같은 출력 결과를 내는지 확인하라. read() 가 읽은 바이트 수가 글자 수와 같으므로 그 값을 글자수를 카운트하는 변수 chn에 저장한다. ch에는 read로 읽은 문자들이 들어있는 buffer에서 반복문을 돌려 그 값이 단어를 구분하는 조건들에 부합하고 이전 글자가 역조건에 부합하면 단어 수를 증가시킨다. 줄바꿈을 만나면 줄 수를 증가시킨다. 실행결과 01-02. 파일에 직각삼각형을 출력하는 프로그램을 작성하시오. ..
[시스템 프로그래밍] 시스템 호출1 : open(), close(), read(), write() 연습문제시스템 호출1 : open(), close(), read(), write() 연습문제 01-01. 명령줄 인수로 받은 텍스트 파일 내의 문자의 수와 단어의 수와 줄의 수를 출력하는 프로그램을 작성한다. 명령줄 인수가 없는 경우, 표준입력에서 받은 내용을 대상으로 한다. 쉘 명령어 wc와 같은 출력 결과를 내는지 확인하라. read() 가 읽은 바이트 수가 글자 수와 같으므로 그 값을 글자수를 카운트하는 변수 chn에 저장한다. ch에는 read로 읽은 문자들이 들어있는 buffer에서 반복문을 돌려 그 값이 단어를 구분하는 조건들에 부합하고 이전 글자가 역조건에 부합하면 단어 수를 증가시킨다. 줄바꿈을 만나면 줄 수를 증가시킨다. 실행결과 01-02. 파일에 직각삼각형을 출력하는 프로그램을 작성하시오. ..
2021.05.22 -
파일시스템과 파일입출력 : fread(), fseek(), fopen(), fclose(), fwrite() 연습문제 01-01. 파일 내용안의 소문자를 모두 대문자로 변경하는 프로그램을 작성하시오. 입력파일로부터 문자 하나를 받고 대문자로 변환하여 출력파일에 저장하는 방식으로 작성합니다. 입력파일은 기본적으로 열고 입력파일이 없으면 표준 출력합니다. 인자가 3인 경우 출력파일에 출력합니다. 실행결과 01-02. 텍스트 파일을 역순으로 출력하는 프로그램 ch12reverse.c를 작성하라. 파일 스트림의 끝 위치를 먼저 구해주고 1부터 끝위치까지 반복하는 반복문에서 파일 끝 위치의 바로 앞 위치에서 문자 하나를 받아서 출력파일에 저장하는 방식으로 작성한다. 실행결과
[시스템 프로그래밍] 파일시스템과 파일입출력 : fread(), fseek(), fopen(), fclose(), fwrite() 연습문제파일시스템과 파일입출력 : fread(), fseek(), fopen(), fclose(), fwrite() 연습문제 01-01. 파일 내용안의 소문자를 모두 대문자로 변경하는 프로그램을 작성하시오. 입력파일로부터 문자 하나를 받고 대문자로 변환하여 출력파일에 저장하는 방식으로 작성합니다. 입력파일은 기본적으로 열고 입력파일이 없으면 표준 출력합니다. 인자가 3인 경우 출력파일에 출력합니다. 실행결과 01-02. 텍스트 파일을 역순으로 출력하는 프로그램 ch12reverse.c를 작성하라. 파일 스트림의 끝 위치를 먼저 구해주고 1부터 끝위치까지 반복하는 반복문에서 파일 끝 위치의 바로 앞 위치에서 문자 하나를 받아서 출력파일에 저장하는 방식으로 작성한다. 실행결과
2021.05.22 -
파일시스템과 파일 입출력 : fread(), fwrite(), fseek() 연습문제 01-01. 파일 내용에 쓰인 영문 소문자를 모두 대문자로 변경하는 프로그램을 작성하시오. 조건1 | 입력파일과 출력파일을 인자로 받아서 결과를 출력파일에 저장한다. 조건2 | 출력파일을 받지 않는 경우 터미널 창에 표준 출력한다. 실행결과 01-02. 파일 내용에 쓰인 내용을 역순으로 출력하는 프로그램을 작성하라. 조건1 | 입력파일과 출력파일을 인자로 받아서 결과를 출력파일에 저장한다. 조건2 | 출력파일을 받지 않는 경우 터미널 창에 오류를 출력한다. 실행결과
[시스템 프로그래밍] 파일시스템과 파일 입출력 : fread(), fwrite(), fseek() 연습문제파일시스템과 파일 입출력 : fread(), fwrite(), fseek() 연습문제 01-01. 파일 내용에 쓰인 영문 소문자를 모두 대문자로 변경하는 프로그램을 작성하시오. 조건1 | 입력파일과 출력파일을 인자로 받아서 결과를 출력파일에 저장한다. 조건2 | 출력파일을 받지 않는 경우 터미널 창에 표준 출력한다. 실행결과 01-02. 파일 내용에 쓰인 내용을 역순으로 출력하는 프로그램을 작성하라. 조건1 | 입력파일과 출력파일을 인자로 받아서 결과를 출력파일에 저장한다. 조건2 | 출력파일을 받지 않는 경우 터미널 창에 오류를 출력한다. 실행결과
2021.05.07 -
파일시스템과 파일 입출력 : fopen(), fclose(), fgetc(), fputc() 연습문제 01-01. 명령줄 인수로 받은 텍스트 파일내의 문자의 수와 줄의 수를 출력하는 프로그램 ch12wc.c를 작성한다. 실행결과 01-02. 파일1에 파일2의 내용을 추가하는 프로그램 ch12append.c를 작성하라. 실행결과 01-03. 입력 파일의 홀수 줄 만을 출력 파일에 저장하는 프로그램 ch12cp.c를 작성하라. 실행결과 01-04. ch12cp의 입력파일과 출력파일을 diff로 비교해 보고 설명한다. 2d1 : origin.txt의 line2를 삭제하면 copied.txt의 line1과 같다. 4d2 : origin.txt의 line4를 삭제하면 copied.txt의 line2와 같다. 6d..
[시스템 프로그래밍] 파일시스템과 파일 입출력 : fopen(), fclose(), fgetc(), fputc() 연습문제파일시스템과 파일 입출력 : fopen(), fclose(), fgetc(), fputc() 연습문제 01-01. 명령줄 인수로 받은 텍스트 파일내의 문자의 수와 줄의 수를 출력하는 프로그램 ch12wc.c를 작성한다. 실행결과 01-02. 파일1에 파일2의 내용을 추가하는 프로그램 ch12append.c를 작성하라. 실행결과 01-03. 입력 파일의 홀수 줄 만을 출력 파일에 저장하는 프로그램 ch12cp.c를 작성하라. 실행결과 01-04. ch12cp의 입력파일과 출력파일을 diff로 비교해 보고 설명한다. 2d1 : origin.txt의 line2를 삭제하면 copied.txt의 line1과 같다. 4d2 : origin.txt의 line4를 삭제하면 copied.txt의 line2와 같다. 6d..
2021.04.28 -
gcc compile 연습문제 01-01. 다음 순서에 따라 수행하고 설명한다. test.c 파일을 컴파일하여 test0 실행 파일을 만든다. test.c 파일을 최적화 컴파일하여 test1 실행 파일을 만든다. (옵션 -O1 사용) test.c 파일을 최적화 컴파일하여 test2 실행 파일을 만든다. (옵션 -O2 사용) test.c 파일을 최적화 컴파일하여 test3 실행 파일을 만든다. (옵션 -O3 사용) diff 명령어를 사용하여 test0, test1, test2, test3가 같은지 다른지 확인한다. 01-02. 위 실행파일들의 수행 시간을 time 명령어로 측정 및 비교한다. 최적화 컴파일을 하지 않은 test0에서는 가장 느린 속도를 보였고 최적화 컴파일 -O1옵션으로 컴파일하니 속도가 ..
[시스템 프로그래밍] 프로그래밍 환경 : gcc compile / makefile 연습문제gcc compile 연습문제 01-01. 다음 순서에 따라 수행하고 설명한다. test.c 파일을 컴파일하여 test0 실행 파일을 만든다. test.c 파일을 최적화 컴파일하여 test1 실행 파일을 만든다. (옵션 -O1 사용) test.c 파일을 최적화 컴파일하여 test2 실행 파일을 만든다. (옵션 -O2 사용) test.c 파일을 최적화 컴파일하여 test3 실행 파일을 만든다. (옵션 -O3 사용) diff 명령어를 사용하여 test0, test1, test2, test3가 같은지 다른지 확인한다. 01-02. 위 실행파일들의 수행 시간을 time 명령어로 측정 및 비교한다. 최적화 컴파일을 하지 않은 test0에서는 가장 느린 속도를 보였고 최적화 컴파일 -O1옵션으로 컴파일하니 속도가 ..
2021.04.27 -
리눅스 기본 명령어 리눅스 기본 명령어 사용방법에 관한 문제들입니다. (1) 루트 디렉터리 (/) 아래의 디렉터리 구조를 cd, pwd, ls 명령어를 이용해 탐색해보자 1-1. 루트 아래의 구조를 탐색하여 두 단계 정도를 트리 모양으로 그리시오. (2) 자신이 그린 트리에서 임의의 파일 혹은 디렉터리를 지정했을 때 그 절대경로명과 상대경로명을 적어보자 2-1. ced계정의 홈 디렉터리로 갈 수 있는 절대 경로와 상대 경로를 입력하시오 >> cd /home/ced >> cd ../../home/ced 2-2. root 디렉터리안의 snap - core18 - 1988 안에 있는 디렉터리들에 접근하기 위한 절대 경로와 상대 경로를 입력하시오 >> cd /snap/core18/1988 >> ../../sna..
[시스템 프로그래밍] 리눅스 기본 명령어 & 관련 문제리눅스 기본 명령어 리눅스 기본 명령어 사용방법에 관한 문제들입니다. (1) 루트 디렉터리 (/) 아래의 디렉터리 구조를 cd, pwd, ls 명령어를 이용해 탐색해보자 1-1. 루트 아래의 구조를 탐색하여 두 단계 정도를 트리 모양으로 그리시오. (2) 자신이 그린 트리에서 임의의 파일 혹은 디렉터리를 지정했을 때 그 절대경로명과 상대경로명을 적어보자 2-1. ced계정의 홈 디렉터리로 갈 수 있는 절대 경로와 상대 경로를 입력하시오 >> cd /home/ced >> cd ../../home/ced 2-2. root 디렉터리안의 snap - core18 - 1988 안에 있는 디렉터리들에 접근하기 위한 절대 경로와 상대 경로를 입력하시오 >> cd /snap/core18/1988 >> ../../sna..
2021.03.25