따..딱히 공부하려고 포스팅하는 건 아니니까..!
http://pacs.tistory.com/entry/%ED%95%AD%EB%AA%A9-13-%EC%9E%90%EC%9B%90-%EA%B4%80%EB%A6%AC%EC%97%90%EB%8A%94-%EA%B0%9D%EC%B2%B4%EA%B0%80-%EA%B7%B8%EB%A7%8C-sharedptr-autoptr
쉘(Shell)이란? 사용자와 운영체제 사이에서 사용자로부터 명령어를 입력받아 이를 처리하는 명령어 처리기 역할을 하는 소프트웨어이다. 사용자가 입력한 명령어를 실행하기 위해 새로운 자식 프로세스들을 생성하여 각 자식 프로세스들이 한 명령어씩 실행하게 한다. 쉘의 실행 절차1. 시작파일을 읽고 실행한다.2. 프롬프트를 출력하고 사용자 명령을 기다린다.3. 사용자 명령을 실행한다.
1. 프로그램 실행 exec() 시스템 호출에 의해서 프로그램이 실행된다. 1. exec() 시스템 호출에 의해 실행이 시작된다.2. 프로그램 실행이 시작된다.3. C 시작 루틴부터 시작하며, 이 시작 루틴은 main() 함수를 호출하고 명령줄 인수와 환경 변수를 main() 함수로 옮겨준다.4. main() 함수를 반환하고 exit() 시스템 호출을 하여 종료한다. 명령줄 인수 명령어와 명령할 내용 등을 말한다. 환경변수 실행파일의 경로정보, 파일이름을 말한다. 내부적으로 환경변수는 쉘이 원래 가지고 있던 것을 전역변수 environ을 통해 환경 변수와 값의 리스트를 포인터 배열 형태로 쉘이 실행하는 프로그램에 넘겨준다. 2. 프로그램 종료크게 정상 종료와 비정상 종료로 나눈다. 1) 정상 종료 1. ..