본문 바로가기
반응형

프로그래밍/운영체제20

코딩 자율학습 리눅스 입문 with 우분투 학습 2일차 정리 3.2 셸 스크립트셸에서 동작 가능한 명령을 모아놓은 파일을 셸 스크립트(shell script)라고 한다. 셸에서 명령이나 프로그램을 실행하듯 셸 스크립트도 셸에서 실행할 수 있다. 물론, 적절한 소유권과 실행 권한이 있어야 한다. 셸 스크립트를 실행하면 셸 스크립트 파일의 내용이 순차적으로 실행된다. 처음부터 끝까지 모두 실행하면 셸 스크립트는 종료된다. 셸 스크립트는 여러 명령을 한 파일에 모아 실행하는 방식으로 자동화가 가능하다. 어떤 목적을 위해 셸에서 여러 명령을 내려야 하는 경우, 이를 셸 스크립트로 작성하면 실행 한 번으로 원하는 바를 이룰 수 있다. 특히 대상 등을 명령어의 인자로 입력받아 실행하면 활용도를 더욱 높일 수 있다.echo 명령어echo 명령어는 입력한 텍스트나 변수를 화면에.. 2024. 12. 13.
Ubuntu 파일, 폴더 소유자 변경하기 우분투(Ubuntu)에서 파일, 폴더 소유자 변경하는 방법우분투에서 chown 명령어를 사용하여 파일이나 폴더 또는 하위경로의 소유자를 변경할 수 있다.명령어가 잘 외워지지 않는다면 change + owner = chown으로 외우면 잘 외워질 것이다.소유자(사용자, 그룹) 변경 명령어 chown$ chown [옵션] [소유자:소유그룹] [파일 또는 폴더]chown 옵션-R, --recursive : 하위 경로의 소유자를 모두 변경한다.-f : 소유자 변경이 안 될 시 오류 메시지를 출력한다.-c : 변경한 파일에 대한 정보를 출력한다.-v : 작업 상태를 출력한다.--help : 도움말을 표시한다.--version : 버전 정보를 보여준다.실제 사용 예시특정 파일의 소유자 변경// testtext.tx.. 2024. 12. 9.
터미널(Terminal)과 셸(Shell)의 관계에 대해서 터미널(terminal)터미널(terminal)은 컴퓨터와 사용 간에 상호작용할 수 있게 연결하는 하드웨어 장치이다. 컴퓨터와 사용자의 상호작용에서 가장 중요한 것은, 사용자가 컴퓨터에게 명령을 전달하고 컴퓨터는 해당 명령을 수행한 결과를 사용하게에 전달하는 것이다. 사용자가 컴퓨터에 명령을 전달하는 장치를 입력 장치, 컴퓨터가 사용자에게 결과를 보여주는 장치를 출력 장치라고 한다.이 당시 터미널은 입출력을 위한 도구일 뿐이었다. 실제 연산은 터미널과 연결된 메인프레임(mainframe, 대형 컴퓨터)에서 수행했다. 요즘은 이런 터미널을 사용하지 않는다. 그 대신 소프트웨어로 동작하는 가상 터미널 프로그램을 사용한다. 운영체제에 설치된 명령 프롬프트 같은 터미널 프로그램이 바로 가상 터미널이다.터미널의 .. 2024. 12. 8.
코딩 자율학습 리눅스 입문 with 우분투 학습 1일차 정리 목차 파트 1 - 리눅스 이해하기1장 리눅스 소개1.1 운영체제란1.2 리눅스 배포판1.3 리눅스의 쓰임과 학습 이유 운영체제란운영체제(OS, Operating System)는 컴퓨터나 스마트폰 같은 시스템에서 하드웨어와 소프트웨어 자원을 관리하고 운영하는 시스템 소프트웨어이다. 하드웨어, 운영체제, 애플리케이션의 관계는 다음과 같다. 사용자 - 애플리케이션 - 운영체제 - 하드웨어 하드웨어 위에는 운영체제가 있고, 운영체제 위에는 애플리케이션이 있다. 마치 단단한 땅이 있어야 그 위에 집을 지을 수 있는 것처럼 잘 작동하는 하드웨어가 있어야 운영체제를 설치할 수 있다. 또 집이 있어야 살림살이를 채워 넣고 생활할 수 있는 것처럼 컴퓨터에 운영체제가 있어야 애플리케이션(프로그램)을 설치할 수 있다 정리하.. 2024. 11. 26.
서비스(Service) vs 데몬(Daemon) 서비스(Service) 부팅 때 자동으로 실행되며 계속 백그라운드에서 실행되는 프로세스 메모리에 상주해 있다가 사용자 요청이 오면 응답하는 프로세스 서비스는 눈에 보이지 않지만 현재 시스템에서 동작 중인 프로세스이므로 백그라운드 프로세스의 일종이라고 할 수 있다. 서비스 == 데몬 데몬(Daemon)과 서비스(Service)는 둘 다 "부팅 시에 자동으로 켜지고 계속 백그라운드에서 실행되는 프로세스"를 의미한다. 유닉스/리눅스 계열에서는 데몬으로, 윈도우에서는 서비스라고 했었지만 요즘은 같은 의미로 사용 서비스(Service) 서비스(Service)란 단어는 "윈도우 운영체제"에서 주로 사용됐던 단어 "윈도우 OS와 함께 시작되어 계속 실행되는 백그라운드 프로세스"란 의미로 데몬과 거의 비슷 "데몬"과 .. 2024. 3. 25.
시스템 콜, 시스템 호출(System Call)이란? 시스템 콜, 시스템 호출(System Call)이란? 운영체제는 다양한 서비스를 수행하기 위해 하드웨어를 직접 관리한다. 반면 응용 프로그램은 운영체제가 제공하는 인터페이스를 통해서만 하드웨어와 통신할 수 있다. 운영체제가 제공하는 이러한 인터페이스를 '시스템 콜(System Call)'이라고 한다. 시스템 콜은 이러한 커널 영역의 기능을 사용자 모드가 사용 가능하게 한다. 즉, 프로세스가 하드웨어에 직접 접근해서 필요한 기능을 수행할 수 있게 해 준다. (즉, 응용프로그램은 시스템 콜을 사용해서 원하는 기능을 수행할 수 있음) 보통 직접적으로 시스템 콜을 사용하기보다는 API(라이브러리 함수)를 통해 제어한다. 위의 그림처럼 운영체제는 메모리에 프로그램 적재, I/O 처리, 파일시스템 처리 등 여러 서.. 2024. 2. 5.