본문 바로가기

UNIX 프로그래밍12

[3주차 실습] UNIX 실습 문제 1. 다음과 같이 실행하는 프로그램을 작성 한 후 실행시킵니다. (a) 읽기쓰기 가능한 "data1" file을 생성하고, 문자 ‘X'를 10개 씁니다. (b) "data1" file의 첫 번째 위치로 file pointer를 옮긴 후 문자 ‘Y'를 하나 씁니다. (c) "data1" file의 마지막 문자 다음 위치로 file pointer를 옮긴 후 문자 ‘Y'를 하나 씁니다. (d) "data1" file의 2, 4, 6, 8번째 문자를 ‘Z'로 바꾸어 씁니다. (e) "data1" file의 15번째 위치에 문자 ‘T'를 씁니다. (f) "data1" file의 뒤에서 2번째 위치에 문자 ‘S'를 씁니다. (g) 'S' 바로 앞에 문자 ‘W'를 씁니다. (h).. 2023. 10. 22.
[2주차 실습] UNIX 실습 문제 1. 다음의 작업을 수행하는 프로그램을 작성하고, 프로그램 실행 후 실행 결과를 확인합니다. (a) “test1" file을 나만 읽기쓰기 가능하게 생성하여 쓰기용으로 open 한 후, “test1" file에 문자 변수 ch에 저장된 문자를 10번 반복하여 씁니다. ch은 ‘X'로 초기화 합니다. 프로그램 종료 후 shell 상에서 cat 명령을 사용하여 ”test1" file에 문자 ’X'가 10개 쓰여 있는지 확인합니다. #include #include #include #include #include int main(void){ char ch = 'X'; int fd, i; fd = open("test1", O_WRONLY, 0600); for( i=0;i 2023. 10. 22.
[1주차 실습] UNIX 실습 문제 1. vi editor 실습 : 다음 프로그램을 편집하여 컴파일한 후 실행시킵니다. 프로그램 파일 이름은 test1.c 로 실행 파일 이름은 test1으로 합니다. vi editor의 다양한 명령을 사용하는 연습을 해 보세요. 해당 코드는 5개의 id와 이름을 입력받으면 data 파일에 id +5 한 값과 이름을 저장하는 코드이다. 1 John 2 Jane 3 Mike 4 Sarah 5 David ls를 통해 생성된 data 파일을 확인할 수 있다. vi data를 통해 출력 값을 확인하면 data 파일에 값이 잘 저장된 것을 확인할 수 있다. 2. 함수 사용 실습 : 위 프로그램에 함수 add_five()를 추가합니다. add_five() 함수는 data[i].id의 값을 받아.. 2023. 10. 15.
[6주차 개념] UNIX 프로세스 생성과 실행 🚩 Process의 생성 #include #include pid_t fork(void); 수행되던 process의 복사본 process 생성 fork() 바로 다음 문장부터 동시에 실행 ✔ 원본과 복사본 process의 차이점 pid와 ppid가 다르다. fork()의 리턴값이 다르다. parent process의 return 값은 child process의 process id child process의 return 값은 0이다. 3. fork 실패 시 -1 return (실패 원인 - 시스템 전체 process의 수 제한, 한 process가 생성할 수 있는 process의 수 제한) one two two 🚩 fork : 파일과 자료 child process는 parent proces.. 2023. 10. 13.