Skip to content

운영체제, 데이터베이스, 컴퓨터 네트워크, 자료구조, 알고리즘 정리

License

Notifications You must be signed in to change notification settings

ZeroOnePro/CS-Gym

Repository files navigation

CS-gym

Contents

자료구조

알고리즘

운영체제

컴퓨터 네트워크

데이터베이스

궁금해 하지않으면 더 이상 깊어질 수 없다

컨텍스트 스위치라는 게 있네 아 이거는 프로세스가 번갈아가면서 실행되는거구나라는 생각에서 멈출 수 있다.

근데 여기서 사고가 끊기면 더 이상 깊어질 수 없다.

왜 컨텍스트 스위치라는게 필요한데?

  • 프로세스를 번갈아가면서 실행시키기 위해
    • 왜 프로세스를 번갈아가면서 실행해야 되는데?
      • 해당 프로세스가 I/O 작업 등으로 인해 오랫동안 대기하는 상태면 자원의 낭비가 발생할 뿐더러, 하나의 프로세스만 실행되는 경우는 현대 컴퓨터 시스템에서 거의 없기 때문
        • I/O 작업은 왜 오래걸리는데?
          • blur blur ~~~

컨텍스트 스위치는 어떻게 이루어지지?

  • OS에서 PCB라는 자료구조를 두어 프로세스를 관리하는데 스케줄러에서 선정된 다음 수행 프로세스와 이전 프로세스를 교체할 때 이 PCB에 현재 수행 중이던 내용을 저장해놓는다. PCB에는 Program Counter, register 내의 값들, stack 영역의 주소 값 등등 여러가지 정보가 들어가게된다.
    • Program Counter는 뭔데?
    • stack안에는 어떤 정보가 들어가는데?

등등 깊이는 끝이 없다.

Output 활성화

단순 input만 하는 것이 아닌 스스로 설명할 수 있어야 된다. 그게 아니면 제대로 아는 것이 아니다. 아는척을 하는 것이다.

정리 방식

  • 강의나 자료를 통해 개념을 정리하고, 전반적 정리가 끝나면 what, why, how 관점에서 분석하고 질문에 스스로 답할 수 있도록 정리 및 연습
    • 컴퓨터 네트워크, 운영체제, 데이터베이스는 강의로 한 학기 내용 복기 후 면집 질문 위주로 deep dive(2w 1h)
    • 자료구조는 전공책으로 필요한 부분만 정리(잘 아는 것들 제외하고 검색트리들 AVL 트리, RED-BLACK 트리, B-트리 같이 학부 때 건너 뛰었지만 중요하고 잘 모르는 것들 위주로 정리, 무엇인지, 왜 쓰는지, 어디 쓰이는지, 어떻게 쓰는지)
    • 알고리즘은 면접 질문 위주로 설명 가능하게 정도로 정리(대표 문제, 정의, 시간복잡도 등)
      • PS하면서 어려운 문제긴 하지만 이게 왜 이 알고리즘이지 하는 문제들이 가끔 있는데, 내가 제대로 이해한 게 맞나 의문이 듦
  • 자료가 신뢰할 만한지 항상 판단해야함, 근거 없는 확신은 인지 오류임을 명심하자
    • 이왕이면 전문 소스(강의, 전공책)으로 보고 이해가 안되는 것들이나 안나오는 것들은 블로그같은 참고 자료 보되, 틀린 내용일 수 있음을 감안하고 봐야됨(소스 출처 남기기)

프로젝트와 관련된 CS 지식을 표현하는 법

오프라인 스터디 내용은 저작권 이슈 해결한 다음 문제없으면 배포하는 걸로 결정

스크립트

$ yarn insert:toc # 목차 생성

$ yarn update:toc # 목차 갱신, 백업 파일 생성됨

$ yarn delete:backup # 백업 파일 제거

License

CC BY-NC-SA

About

운영체제, 데이터베이스, 컴퓨터 네트워크, 자료구조, 알고리즘 정리

Topics

Resources

License

Stars

Watchers

Forks