본문 바로가기

Server Programming/BackEnd Project

64일차 - TIL

반응형

오늘 한것

  • SELECT문 - LIMIT, COUNT, DISTINCT
  • 운영체제 - 프로세스 스케줄링
    • 목적 : 대기시간 최소화, 공평한 프로세스 작업 시간 할당, idle 최소화해 휴지시간을 줄인다.
    • 스케줄링 큐의 종류
      • JOB Queue : 시스템 내부의 프로세스
      • Ready Queue : 실행 대기 상태의 프로세스
      • Device Queue : 인터럽트, 실행 중지된 프로세스 중 I/O 대기하는 프로세스
    • 장기 / 단기 / 중기 스케줄러
      • 단기 스케줄러 : 레디 큐에서 프로세스를 선택해 CPU에 할당 (CPU 스케줄러)
      • 중기 스케줄러 : CPU를 할당 받기 위해 경쟁하는 과열된 프로세스를 제거
        • 스와핑 : 제거한 프로세스들을 불러와 중단점에서 부터 프로세스를 재개하는 것
      • 장기 스케줄러 : 잡 큐에서 프로세스 선택해서 실행하기 위해 메모리에 적재
  • 운영체제 - 컨텍스트 스위치 
    • 컨텍스트 스위치 - 프로세스 전환으로 PCB에 저장된 컨텍스트에 있는 프로세스 정보와 저장된 위치 정보를 보고 이루어진다.
    • PCB (프로세스 제어 블록)  - 컨텍스트를 저장하는 곳으로 프로그램 카운터, 레지스터 값, 프로세스 상태등을 저장한다.
    • 컨텍스트 - CPU 레지스터의 값, 프로세스 상태, 메모리 관리 정보를 담고 있다.
      • 컨텍스트 스위치가 진행되는 동안 시스템은 소요 시간 동안 순수한 오버헤드로 시간을 낭비한다.
  • 운영체제 - 프로세스 연산 (생성과 종료)
    • 프로세스는 동시에 실행가능하며 동적으로 생성, 종료되는 특성을 가진다.
    • 부모 프로세스와 자식 프로세스 
      • 자식 프로세스는 직접 자원을 할당 받거나, 부모 프로세스의 리소스를 일부 할당 받는다.
      • 자식 프로세스는 fork()를 통해 부모 프로세스 복제시 리소스 권한과 스케줄링 속성을 상속 받는다.
      • 부모 프로세스는 자식 프로세스와 동시에 구동하며 자식 프로세스 전부/일부가 종료될 때까지 항상 대기한다.
      • 최종 실행이 종료되면 exit()을 호출해 삭제 요청
        • 대기중인 부모 프로세스에서 상태 값 리턴
        • 모든 프로세스 자원들을 할당 해제
      • 부모 프로세스가 자식 프로세스를 abort()를 호출해 강제종료하는 경우 
        • 자식이 할당된 자원의 사용량을 초과한 경우
        • 자식의 작업이 필요하지 않은데 직접 종료하지 않은 경우
        • 부모가 종료되었고, 자식은 종료되지 않았을 경우 (자식의 연쇄적 종료 : cascading)
    • 좀비 프로세스
    • 고아 프로세스 

내일 할것

  • 운영체제 - 프로세스 간 통신, 클라이언트 서버 간 통신, 스레드
  • DB - LIMIT, SUM/AVG/COUNT/WHERE 조건절/MIN/MAX/JOIN
  • 스프링 - 서블릿에서의 doGet과 doPost
 
 
 
 
 
반응형

'Server Programming > BackEnd Project' 카테고리의 다른 글

66일차 - TIL  (0) 2023.02.16
65일차 - TIL  (0) 2023.02.16
63일차 - TIL  (0) 2023.02.13
60일차 -TIL  (0) 2023.02.10
프로그래머스 - 카카오  (0) 2023.02.10