Linux/프로그램 관리하기7 [Linux 프로그램 관리] 7. $ nice, $ sleep 명령어 사용하여 우선순위 변경 및 특정 시간만큼 재우기 반갑습니다! 이번 포스트에서는$ nice 명령어를 사용하여 프로그램의 우선 순위를 변경해보고,$ sleep 명령어를 이용하여 지정한 시간만큼 정지(잠들기)를 시켜보겠습니다 ^^ 1. 프로그램 우선 순위 변경하기 : $ nice$ nice 명령어의 인자에 실행하고 싶은 명령어를 지정하면해당 프로그램의 우선 순위를 변경하여 실행합니다 우선 $ ps 명령어에 l 옵션을 기재하여각 프로세스의 우선 순위를 확인해보겠습니다 ^^ PRI와 NI라는 부분이 있습니다PRI는 Priority의 축약표현으로서 운영체제에서 참고하는 우선순위이고,NI는 NICE의 축약표현으로서 사용자가 조작 가능한 우선순입니다 ^^ nice 값의 범위는 -20부터 19까지입니다해당 값이 작을수록 우선 순위가 높기 때문에 -20이 최고 .. 2024. 8. 17. [Linux 프로그램 관리] 6. ①프로세스 부모 자식 관계 ②스레드와 프로세스의 관계 ③사용자와 프로세스 제어에 대하여 반갑습니다! 이번 포스트에서는①프로세스 부모 자식 관계와②스레드와 프로세스의 관계와③사용자와 프로세스 제어에대해알아보도록 하겠습니다 ^^ 1. 프로세스 부모 자식 관계프로세스가 서로 독립적으로 동작하는 구조는OS가 하드웨어 자원(리소스Resource)을프로세스마다 할당해주기 때문에 유지 가능합니다 이런 구조는 프로세스끼리 서로 리소스 사용에 대한간섭이나 충돌 없는 안정적인 시스템 운용에 있어무척 중요한 역할을 합니다 하지만 프로세스끼리 전혀 아무런 관계가 없는 것은 아닙니다부모 자식 관계 및 상하위 관계가 존재합니다 보통 프로세스는 다른 프로세스를 통해서 실행됩니다실행하는 쪽이 부모프로세스,실행된 쪽이 자식 프로세스가 됩니다 프로세스의 상속 관계에 대해서는$ ps 명령어에 l 옵션 또는 f 옵션을.. 2024. 8. 17. [Linux 프로그램 관리] 5. 프로세스와 OS 프로세스 관리에 대하여 반갑습니다오늘은 CS 이론에 대한 내용을 잠시만 살펴보겠습니다 ^^ 1. 프로세스란?프로세스를 조금 상세히 설명해보겠는데요프로세스는 간단히 설명하면, '실행 중인 프로그램의 단위'입니다.그럼 프로그램과 프로세스는 어떻게 다를까요? $ more 명령어를 예시 삼아 알아보겠습니다.해당 명령어를 실행할 때마다 디스크에 저장된 실행 파일을 읽습니다파일에는 해당 명령어가 작동하는 방법 등이 기록되어 있겠죠 ^^ 이런 일련의 작업을 컴퓨터에 실행시키는 방법이 기록된파일 또는 실행 내용이 프로그램입니다! 하지만 일련의 작업을 컴퓨터에서 실행시키는 방법이기록된 파일 또는 실행 내용이 동일하더라도여러개를 동작시켰을 경우 각 프로그램은 독립적으로 동작을 하는데요이렇게 프로그램을 실행한 하나하나를 프로세스라고 부릅니다 .. 2024. 8. 17. [Linux 프로그램 관리] 4. $ kill, $ killall 명령어 이용하여 프로세스 종료하기 반갑습니다!이번 포스트에서는 $ kill 명령어를 사용하여 특정 프로세스를 종료시켜보겠습니다 만약 실행 중인 프로그램을 종료하기 위해 Ctrl+C를 입력했는데 아무런 반응이 없는 등해당 프로세스가 응답 불능 상태에 빠져있거나 사용자 임의의 프로그램 종료시유용하게 사용하는 명령어가 되겠습니다 ^^ 예시를 위해서,$ more 명령어를 사용하여 test3.txt 파일을 열람할 때 &기호를 사용해서 백그라운드로 실행시켰습니다이제 $ fg 명령어를 사용해서 해당 프로그램을 포그라운드로 전환시키면다시 해당 텍스트 파일의 내용을 조회할 수 있는데요 ^^ 여기서 $ kill 명령어를 사용해서 해당 프로세스를 아예 종료시켰습니다상기 예시 이미지를 보시면 $ kill 명령어에해당 프로세스 ID를 인자로 넣어주어 강제.. 2024. 8. 17. [Linux 프로그램 관리] 3. $ ps 명령어 이용하여 프로세스 상태 표시하기 반갑습니다!이번 포스트에서는 $ ps 명령어를 이용하여 프로세스 상태를 표시해보겠습니다 ^^ 지금까지는 실행 중인 프로그램을 관리하는 방법으로$ job 명령어와 작업 번호를 이용했습니다 하지만 작업 번호는 셸마다 독립적으로 관리하므로다른 셸 터미널에서는 사용이 불가능합니다 ^^;; 실행 중인 프로그램을 어떤 셸에서 실행했는지에 관계없이모든 셸에서 조작하려면 프로세스 ID가 필요합니다프로세스 ID는 오늘 살펴볼 $ ps 명령어로 확인할 수 있습니다 ^^! 1. 프로세스 상태 표시하기 : $ ps 예시 이미지와 같이 $ ps 명령어를 프롬프트에 입력하면프로세스 상태가 터미널에 출력됩니다 ^^ 표시되는 프로세스 정보는 실행 중인 프로세스 상태에 따라 달라집니다위 이미지에서 PID는 프로세스 ID를 뜻하고.. 2024. 8. 13. [Linux 프로그램 관리] 2. $ fg와 $ bg 이용하여 포그라운드로 실행 및 정지 프로그램을 백그라운드로 재개하기 반갑습니다! 저번 포스트에서 여러 내용을 다루면서자연스럽게 프로세스와 작업에 대해서 이야기했는데요 프로세스는 실행 중인 프로그램을 관리하는 단위입니다 ^^ 프로세스와 작업 이 둘은 모두 실행 중인 프로그램의 실체를 가리키지만,디테일한 차이점이 있습니다 프로세스는 OS(리눅스) 자체가 관리하는 프로그램 실행 단위이고,작업은 bash를 비롯한 셸(Shell)이 관리하는 프로그램 실행 단위라는 점입니다 ^^ 따라서 프로세스 ID는 모든 셸에서 참조할 수 있으나,작업 번호는 명령어를 입력한 셸에서만 참조 가능합니다 ! 하지만 일반적으로 명령어를 입력해서 프로그램을 실행하면하나의 프로세스로 실행되므로 프로세스와 작업은 대개 일치합니다 ^^이 때 각각에 할당된 번호인 프로세스 ID와 작업 번호만 서로 다를 뿐입니.. 2024. 8. 13. 이전 1 2 다음