리눅스 프로세스 ( process ) 란?

실행중인 프로그램

DISK ( 한글.exe ) ---> MEM ( 한글 process ) ---> CPU ( 중앙 처리 장치 )

프로세스는 프로그램이 메모리에 적재되어 실제로 실행되고 있는 상태를 말한다. 프로세스는 컴퓨터 내에서 실행중인 프로그램의 인스턴스이다. 여러 명의 사용자들에 의해 공유되고 있는 응용프로그램은 일반적으로 각 사용자들의 실행단계에서 하나의 프로세스를 갖는다. 프로세스는 자 프로세스라고도 불리는 서브프로세스를 시작시킬 수 있다. 자프로세스는 부프로세스의 복제로서 부프로세스의 자원을 일부 공유하는데, 부 프로세스가 종료되면 더 이상 존재 할 수 없다. 프로세스들은 몇 가지 IPC 방식을 통하여 정보를 교환하거 그들의 연산을 동기화 할 수 있다.

모든 프로그램은 실행될 때 하나 이상의 프로세스를 갖는다. 하나의 프로세스에는 여러 명령어와 카운트, CPU 레지스터, 그리고 루틴 인자, 복귀 주소, 저장된 변수 등의 데이터 스택이 포함되어 있다. 각 프로세스는 고유한 권한과 책임을 가지고 서로 통신하며, 시스템에서 동작중인 하나의 프로세스가 잘못된 연산을 수행하여 에러를 일으키더라고 다른 프로세스는 정상적으로 작동한다. 개별 프로세스는 자신의 가상 주소 공간에서 실행되며, 커널이 제공하는 인터페이스를 통해서만 다른 프로세스와 연동할 수 있다.

프로세스는 여러 가지 자원을 사용한다. 프로세스는 해당 명령을 수행하기 위해 운영체제에 따라 CPU를 점유 할  수 있다. 명령어와 데이터를 저장하기 위해 물리적인 메모리를 사용한다. 프로세스는 운영체제의 제어를 받으면서 실행 ( running ), 대기 ( waiting ), 중단 ( stopped ), 좀비 ( zombie ) 중 한 상태에 있게 된다.

리눅스 <Tab> 파일 이름 자동 완성 기능

디렉토리에 있는 파일이나 디렉토리의 첫 번째 문자만 입력 후 <Tab>키를 누르면 첫 글자로 시작하는 파일이나 디렉토리의 나머지 글자가 자동 완성된다. 단 , 첫 문자가 같은 디렉토리나 파일이 있는 경우 <Tab> 키 한번만 누르면 아무 변화도 없지만 <Tab> 키 두번 연속으로 누르면 동일하게 시작하는 모든 디렉토리나 파일을 출력해 준다.

[명령어 형식]

# ls t <Tab>

예를 한번 볼까요??

위의 캡쳐 사진이 보이시나요??

Tab 키를 누르게 되면 자동적으로 입력이 되는 것을 표현한 것입니다.

Tab 키를 두번 누르게 되면 파일 혹은 디렉토리가 검색이 되는 것을 확인 할 수 있습니다.

 

탭키를 은근 많이?? 사용하게 되니 적용을 잘 해 놓으시면 작업을 하시는데 편히 작업을 하실 수 있을 것 입니다.

'공부합시다 > 리눅스' 카테고리의 다른 글

데몬 ( Daemon ) 의 정의  (0) 2016.12.19
리눅스 프로세스 ( process ) 란?  (0) 2016.12.18
리눅스 파이프( Pipe, | )  (0) 2016.12.16
리눅스 쉘의 정의, 기능  (0) 2016.12.15
리눅스 명령어 find CMD linux  (0) 2016.12.14

리눅스 파이프 ( Pipe, | )

파이프 ( Pipe ) 란? 앞에 실행한 명령어의 출력 결과를 뒤에 실행하는 명령어의 입력 값으로 넣어 준다. 앞의 출력 결과를 뒤에 실행하는 명령어의 입력 결과로 보내줌으로 인해 파이프 ( | ) 를 사용하면 여러 명령을 동시에 연결하여 사용할 수 있다.

ls -al 명령을 사용하게 되면 모든 파일을 보여주므로 한 화면을 넘는 많은 파일을 보여 주게 될 때 " ls -al | more " 를 쓰게 되면 ls 명령에 대한 결과를 more 명령을 통해 확인해 볼 수 있다.

파이프의 원리

CMD   ===>>> Kemel Buffer ===>>> CMD

첫번째 CMD로 출력된 내용을 화면에 그대로 출력하지 않고 커널 버퍼에 date를 저장 해 두었다가 버퍼에 저장된 결과 값을 고지고 뒤에 있는 CMD의 입력 값으로 넘겨 뒤에 있는 명령어가 실행한 결과를 출력해 주게 된다.

[명령어 형식]

# CMD | CMD

# CMD | less    ( less : 한 페이지가 넘는 페이지 출력 방법지정 )

이해가 가시나요??

다른방법으로는

CMD ===>>> Kemel Buffer ===>>> CMD ====>> Kemel Buffer ===>>> CMD

요런 방식도 가능합니다~~^^

 

+ Recent posts