TODO
- 책 ( 객체지향의 사실과 오해 )
- [ ] 남은 구간 중 절반 읽기
- 알고리즘
- [x] 알고리즘 2문제 풀기
- [x] SQL 3문제 풀기
- Spring
- [x] 4주차 절반정도 마무리하기
복기
Entity 연관관계
1 대 1 관계
1 대 다 관계
다 대 다 관계
운영체제 (Operating System)
운영체제는 컴퓨터 시스템의 핵심 소프트웨어로, 하드웨어와 소프트웨어 간의 상호 작용을 관리하고 제어하는 역할을 합니다.
주요 기능
-
자원 관리:
- 하드웨어 자원인 CPU, 메모리, 저장 장치 등을 효과적으로 관리하여 응용 프로그램이 자원을 효율적으로 활용할 수 있도록 합니다.
-
프로세스 관리:
- 응용 프로그램의 실행을 위해 프로세스를 생성, 스케줄링하고 관리합니다.
-
메모리 관리:
- 시스템 내의 메모리를 효율적으로 할당하고 관리하여 여러 프로세스가 메모리를 공유하고 충돌하지 않도록 합니다.
-
파일 시스템 관리:
- 파일 및 디렉토리를 생성, 읽기, 쓰기, 삭제하는 파일 시스템을 관리하며 데이터의 저장과 검색을 지원합니다.
-
입출력 관리:
- 입출력 장치와의 상호 작용을 관리하고 드라이버를 통해 다양한 입출력 장치와 통신합니다.
-
시스템 콜과 인터럽트 처리:
- 응용 프로그램이 운영체제의 서비스를 사용할 수 있도록 하는 시스템 콜을 제공하고, 하드웨어나 소프트웨어 이벤트에 대한 인터럽트를 처리합니다.
-
네트워크 및 보안 관리:
- 네트워크 기능을 제공하고, 보안 기능을 통해 시스템의 안정성을 유지합니다.
역할
운영체제는 하드웨어와 소프트웨어 간의 인터페이스로서, 컴퓨터 시스템을 효율적으로 운영하고 사용자 및 응용 프로그램이 자원을 효과적으로 활용할 수 있도록 돕습니다.
전체적인 프로세스
-
운영체제 ( OS ):
- 컴퓨터 부팅 시 운영체제가 시작되며, 하드웨어 리소스를 초기화하고 관리합니다.
- 사용자 또는 응용 프로그램이 실행되면 운영체제는 해당 프로세스를 위한 메모리를 할당하고 필요한 자원을 관리합니다.
-
JVM 실행:
- 자바 애플리케이션이 실행되면, 운영체제에서는 JVM이 시작됩니다.
- JVM은 운영체제와 상호 작용하여 자바 바이트 코드를 해석하고 실행합니다.
-
Tomcat 실행:
- Tomcat 웹 서버는 자바 기반의 웹 어플리케이션을 실행하는 서버로, JVM 내에서 동작합니다.
- Tomcat은 웹 어플리케이션의 배포, 실행, 관리를 담당하며, 사용자로부터의 HTTP 요청을 처리합니다.
-
HTTP Request 및 스레드 생성:
- 클라이언트가 HTTP Request를 보내면, Tomcat은 이를 받아서 해당 요청을 처리할 새로운 스레드를 생성합니다.
- 각 HTTP 요청에 대해 새로운 스레드를 만들어 병렬적으로 다수의 요청을 처리할 수 있도록 합니다.
-
Request 처리 및 Response 생성:
- 각 스레드는 받은 HTTP Request를 처리하기 위해 해당 요청에 대한 서블릿 또는 다른 핸들러를 호출합니다.
- 서블릿은 요청에 대한 비즈니스 로직을 수행하고, 필요한 경우 데이터베이스와의 상호 작용 등을 수행합니다.
- 처리된 결과는 HTTP Response에 실려 클라이언트에게 전송됩니다.
-
HTTP Response 전송:
- 각 스레드는 처리한 결과를 HTTP Response로 만들어 클라이언트에게 전송합니다.
- 클라이언트는 받은 응답을 해석하고 결과를 표시하게 됩니다.