System call 시스템 호출 또는 시스템 콜(system call), 간단히 시스콜(syscall)은 운영 체제의 커널이 제공하는 서비스에 대해, 응용 프로그램의 요청에 따라 커널에 접근하기 위한 인터페이스이다. 보통 C나 C++과 같은 고급 언어로 작성된 프로그램들은 직접 시스템 호출을 사용할 수 없기 때문에 고급 API를 통해 시스템 호출에 접근하게 하는 방법이다. - 위키백과 위의 정의로 보면 우리가 개발을 할 때, 내가 모든 기능을 구현할 수 없어 API를 통해서 원하는 기능을 수행하게 만들 때가 있다. system call도 마찬가지로 직접 os의 system 호출이 어려워 그것을 편하게 만들어 놓은 것이다. 운영체제는 커널모드(kernel mode)와 사용자 모드(user mode)로 나..
멀티 프로세스(Multi process) 멀티 프로세스는 다수의 프로세서(CPU)가 협력적으로 하나 이상의 작업을 동시에 처리하는 것이다. 병렬처리의 개념이라고 생각할 수 있다. 스레드와 프로세스의 차이점으로는 주소공간이나 공유하는 점이 있고 없고의 차이가 있다. thread: code, file, data를 공유한다. 따라서, 프로세스를 여러게 쓰는 경우에는 메모리의 구분이나 독립된 주소 공간을 가져야 할 때이다. 장점 하나의 프로세스가 장애가 나더라도 다른 프로세스에 영향을 미치지 않는다. 별도의 동기화 작업이 필요없다. 단점 독립된 메모리 영역으로 인해 작업량이 많아질수록 문맥교환(Context Switching)이 많이 일어나 오버헤드가 발생해 성능저하가 발생할 수 있다. 멀티 스레드(Multi ..
1. 프로세스 프로세스란 실행 중인 프로그램이다. Linux 운영체제에서는 다음과 같은 명령어로 실행중인 프로세스를 확인 할 수 있고, $ ps -ef Windows 운영체제에서는 작업 관리자를 켜면 볼 수 있는 것이 프로세스이다. 프로세스에는 몇가지 상태로 나눌 수 있다. 생성중(new) 실행중(running) 대기중(waiting) 준비완료(ready) 종료(terminate) 여기서 다른 부분은 쉽게 이해가 가지만 대기중(waiting) 상태로 넘어가는 경우는 크게 2가지가 있다. CPU를 주어도 당장 실행하지 않음. 요청한 event가 즉시 만족하지 않음. 2. 스케줄러 위와 같이 프로세스가 여러 상태로 변경될 때, 다음 차례의 프로세스를 결정해주는 스케줄러가 있다. 장기 스케줄러 다른 말로는 j..
- Total
- Today
- Yesterday
- feign client
- centos
- Producer
- Container
- Firebase
- KAFKA
- Front
- OS
- 프론트엔드
- Data Engineering
- JPA
- consumer
- 리액트
- logback
- NextJS
- cs
- docker
- broker
- apache kafka
- Java
- frontend
- apache
- K8S
- rhel
- API
- spring boot
- Linux
- React
- spring
- zookeeper
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |