본문 바로가기

서버운영 (TA, ADMIN)/리눅스

(19)
[리눅스] inode 개념 보호되어 있는 글입니다.
[OS] I/O 멀티플렉싱 (select, poll, epoll, kqueue) https://velog.io/@makehardtraining/IO-Multiplexingselect-poll-epoll-kqueue Fork: 프로세스를 새로 만드는 방법으로 클라이언트 요청이 있을때마다 프로세스를 복사하여 여러 사용자에게 서비스를 제공 Threads: 프로세스 방법이 아닌 쓰레드를 생성해서 여러 사용자들에게 서비스를 제공 I/O Multiplexing: 여러 소켓에 대해 I/O를 병행적으로 하는 기법. 다수의 프로세스 혹은 스레드를 만들지 않고도 여러 파일을 처리할 수 있기 대문에 less memory, less context switching이 가능해 성능 개선됨. 비동기 I/O: I/O가 비동기적으로 처리되는 기법. 시그널이 병행되어 존재함. Event Driven I/O: I/O..
[리눅스] trap을 이용한 signal 처리 signal은 unix 운영체제에서 비동기적인 사건을 전송하기 위해서 사용하는 설비다. 비동기적인 사건이란 언제 발생할지 예측할 수 없는 사건으로 터미널 종료, 메모리 침범, 알람, 장치로부터의 입력 등의 사건이 이에 해당한다. 유닉스 시스템은 이러한 시그널 처리가 가능하도록 signal(:12) 제어용 C 함수들을 제공한다. 그러나 이들 C 인터페이스 함수는 간단한 일을 처리하기에는 좀 부담스러운게 사실이다. 여기에 trap(:12)을 이용해서 shell 스크립트로 이벤트를 처리하는 방법을 소개하고자 한다. 시그널은 프로세스에 종속적으로, 해당 프로세스별로 받아들이거나 무시하는 시그널이 정의된다. 그러므로 shell 상에서 이벤트를 처리하는 스크립트를 작성하려면, shell에서 받아들이는 시그널의 종류..
[리눅스] 시스템 구성 정보 확인하기 보호되어 있는 글입니다.
[리눅스] 데몬(Disk And Execution MONitor) 데몬이란 서버 프로세스로 시스템이 살아잇는 동안 결코 종료되지 않고 백그라운드 프로세스 상태로 존재합니다. 예를 들면 웹서버 데몬은 백그라운드 상태에서 클라이언트의 요청을 대기하고 있다가 요청이 도착하면 각 요청에 대해 새로운 프로세스를 생성해서 요청에 대한 서비스를 수행하고 새로 생성된 프로세스는 종료합니다. 그러나 원래의 웹서버 데몬은 종료하지 않고 백그라운드 상태에서 클라이언트의 요청을 대기합니다. FTP, TELNET 등의 인터넷 서비스를 이용할 때에도 서버측에서 인터넷 데몬이 백그라운드로 실행되고 있고, 클라이언트의 FTP, TELNET 요청이 있을 경우 각 요청을 서비스하기 위해 자식 프로세스를 생성하고, 서비스가 완료되면 요청에 따라 생성된 프로세스는 종료 됩니다.