[발자국] 인프런 워밍업클럽 CS 2기 1주차 발자국
한줄 평
자료구조 및 알고리즘 에서는 배열, 연결리스트, 스택(Stack), 큐(Queue), 덱(Deque), 해시 테이블(Hash Table), 셋(Set)등의 개념에 대해서 공부했다. 특히 실생활에서의 예를 들어 설명을 해주셔서 더욱 쉽게 이해할 수 있었다.
운영체제는 거의 처음 공부해보는 것이어서 낯선 부분도 있었고, 새롭게 알게 되어 흥미로운 부분도 있었다.
학습 했던 내용 요약
자료구조 및 알고리즘
배열: 읽기, 쓰기와 같은 참조에는 O(1)의 성능을 가지고, 삭제에서는 O(n)의 성능을 가진다.
연결리스트: 배열과 달리 크기가 동적이지만, 데이터 참조 및 삭제에서 모두 O(n)의 성능을 가진다.
스택 : FILO 구조를 가진다.
큐 : 스택과 반대로 FIFO 구조를 가진다.
덱 : 데이터 삽입 제거를 head, tail 모두에서 이룰 수 있는 자료구조.
해시 테이블 : (Key, Value)로 데이터를 저장하는 자료구조. 해시 함수는 키를 해시 값으로 변환하는 함수인데, 해시 함수는 키를 고르게 분포시키고, 충돌을 최소화해야 한다.
셋 : 데이터의 중복을 허용하지 않는 자료구조이다.
운영체제
운영체제의 구조 : 커널, 사용자(인터페이스를 통해), 애플리케이션(시스템 콜통해), 하드웨어(드라이버 통해)
컴퓨터 하드웨어 구조 : CPU와 메모리 필수!
CPU의 구조 : 산술논리 연산장치, 제어장치, 레지스터
메모리 구조 : RAM, ROM
인터럽트 : 폴링방식을 해결한 방식
프로세스와 쓰레드 : 프로세스(실행중인 프로그램), 프로세스(운영체제가 작업을 처리하는 단위)
PCB : 운영체제가 프로세스를 관리할 때 이를 활용
프로세스 상태 : 생성, 준비, 실행, 대기 , 완료
컨텍스트 스위칭 : 프로세스를 실행하는 중에 다른 프로세스를 실행하기 위해, 실행 중인 프로세스의 상태를 저장하고, 다른 프로세스의 상태값으로 교체하는 작업
회고
일주일 동안 스스로 칭찬하고 싶은 점
일중일치 시간표 대로의 진도대로 인강을 다 수강하고, 미션과 발자국도 기한내에 진행한 점.
아쉬웠던 점
토요일까지로 미션과 발자국을 미리 완수하고 싶었는데, 그렇지 못한 점.
일주일의 진도는 밀리지 않았지만, 하루하루 진도는 정확히 일치하게 수행하지는 못한 점
보완하고 싶은 점
매일 시간표대로 진도를 나가고 싶다.
구현 강의부분에서 스스로 먼저 해보고 강의를 들었어야 했다는 아쉬움이 있다.
인강을 듣고, 추가로 궁금한 사항이나 활용해보는 부분을 더 진행하고 싶다.
다음주 학습 목표
진도를 누락하지 않고 인강을 수강하기
구현 부분을 먼저 스스로 해보고, 강의 듣기
개념에 대해서 더 깊게 찾아보거나, 코드로 활용가능한 부분들은 더 활용 해보기
출처 : 그림으로 쉽게 배우는 운영체제 - 감자 , 그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)- 감자
댓글을 작성해보세요.