본문 바로가기

Study/신입 자라기

[Study]신입 자라기 - 85

신입 자라기 85일 차, 화요일

Daily Routine

시간 Routine
8 : 30  기상
9 : 00 ~ 10 : 00 출근 시간
10 : 00 ~ 11 : 30 규격서 작성
11 : 30 ~ 12 : 30 점심 시간
12 : 30 ~ 18 : 00 1. 규격서 초안 마무리
2. 메서드 수정
18 : 00 ~ 19 : 00 저녁 시간
19 : 00 ~ 21 : 00 개인 공부
21 : 00 ~ 22 : 30 퇴근 및 휴식
22 : 30 ~ 25 : 00 1. 블로그 포스팅
2. 프로그래머스

출근길에 보는 CS

컴파일러 vs 인터프리터

컴파일러 

  • 프로그램 전체 코드를 스캔 후 기계어로 번역
  • 컴파일러가 인터프리터 보다 실행시간이 빠른 경우가 많음
  • 빠른 이유는 전체 스캔후 실행파일이 만들어지기 때문에 한 문장씩 계속 번역하는 인터프리터보다 빠름
  • C, C++, JAVA

인터프리터

  • 런타임 이후 row 단위로 번역
  • 실행파일 같이 생성하는게 없기 때문에 메모리 효율이 좋음
  • Python, Ruby, Javascript
교착 상태
  • 운영체제 혹은 소프트웨어의 잘못된 자원 관리로 인하여 둘 이상의 프로세스가 동시에 블로킹되는 현상
  • 두 개 이상의 작업이 서로의 작업이 끝나기만을 대기하여 결과적으로는 아무것도 완료되지 못하는 상태를 가리가리 킵니다.
교착 상태 필요조건

1. 상호 배제(Mutual exclusion) 

  • 자원 자체를 동시에 쓸 수 없는 경우

2. 점유 대기(Hold and wait)

  • 자원을 소유한 상태에서 다른 자원을 기다리고 경우

3. 비선점(No preemption)

  • 다른 프로세스가 어떤 자원의 사용을 끝낼 때까지 해당 자원을 뺏어올 방법이 없는 경우

4. 순환 대기(Circular wait)

  • 대기가 꼬리를 물고 사이클이 되어 자기 순서로 돌아와도 기다리는 경우

'Study > 신입 자라기' 카테고리의 다른 글

[Study] 신입 자라기 - 88  (0) 2022.06.18
[Study] 신입 자라기 - 86  (0) 2022.06.16
[Study] 신입 자라기 - 84  (0) 2022.06.14
[Study] 신입 자라기 - 83  (0) 2022.06.11
[Study] 신입 자라기 - 82  (0) 2022.06.10