[22.11.11] TIL +9

김미영·2022년 11월 12일
0

내배캠

목록 보기
24/46
  • 컴퓨터 구성
    cpu - 중앙에서 모든 디바이스를 관장함, 제일 중요함
    memory
    disk

  • cpu - CPU는 x개의 코어가 있고, 코어는 n개의 레지스터가 있다?

  • 싱글코어 -> 멀티코어로 바뀐 이유
    싱글코어로도 어느정도는 극한의 처리량을 소화할 수는 있다.
    무어의법칙 -> 1년마다 프로세스의 성능이 2배 올라간다. 그래서 처리를 하다보니 발열때문에 cpu로 고기를 구워먹을 수도 있다.
    코어의 성능 향상엔 본질적인 한계가 있다.
    그래서 멀티풀하게 해결해보자. 해서 멀티코어가 나왔다.

  • 멀티코어 -> 멀티하게 state 가짐
    state = register들 (레지스터들)

  • cpu 구성
    alu 산술논리연산
    cu - control unit - os 위에 프로그램들이 있고 프로그램들이 뭔가 클릭하거나 엔터치거나 할때마다 연산을 실행하라고 하는것임.
    프로그램 a-> 뭘 클릭하면 cpu한테 이런 연산을 해주세요. 라고 해줌.

  • cu -> fatch (패치)한다. (어딘가에 쌓임) -> 디코드(해석)을 alu한테 한다

  • alu 일거리 받음 -> 디코딩된 명령어로 산술논리연산을 한다.
    끝나면 프로그램에 전달 -> 그럼 프로그램 메모리가 변한다.

  • < 레지스터 > : 업무 별로 내뉨
    general - purpose (범용)
  • special - purpose (특용)
    -pc레지스터 - 프로그램카운터
  • 명령어들-한라인-적은단위로 들어감-cu가 처리하고 프로그램카운터로 넘김.
    cpu가 얼마나 처리했냐 알아야되는데 그걸 관장하는게 pc프로그램 카운터이다.
  • cpu는 alu cu 레지스터 캐시 로 구성되어있음.
  • cpu->disk에 있는걸 가져와서 연산함. 연산해서 cpu랑 핑퐁
    근데 핑퐁하는데 거리가 좀 있음.
    이 거리를 좁혀야 좋은데, 빈번하게 쓰이는것, 가장 최근 쓰인것을 캐시라는 공간에 모아놓는다.(캐싱 이라고 함)
    캐시코히런스 -> 캐시가 어떤 정책인지 확인이 필요함
  • cpu와 프로그래머와 통신하는 방법
    cpu는 0101(기계어) 만 안다.
    근데 프로그래머는 기계어를 쓰지 못한다.
    010101010 못쓰니까
    어샘블리어 만들데 이것도 힘들어서 (어셈블리어 어려움)
    c,java,c++ 등 컴파일러(통역)가 나옴.
    cpu아키텍처에 따라 조금씩 다르다.

여기까지 cs특강에서 알아들을 수 있는것만 메모해놓았다..
당췌 무슨말인지 이해가 안된다.
일단 cs는 둘째치고, 알고리즘을 위해 인프런 결제하고 내장함수들 메모하고있다.
알고리즘 강의는 아마 일요일이나 월요일부터 제대로 들을 수 있을 것 같고,
퍼블리싱과 git 관련 강의가 추가되어서 그것부터 먼저 봐야할 것 같다.

profile
프론트엔드 지망생

0개의 댓글