쥐로그

쥐로그

  • 분류 전체보기 (154)
    • Algorithm (52)
    • React (11)
    • Next.js (20)
    • JavaScript (19)
    • C언어 (6)
    • Backend (18)
      • Docker (7)
      • python (7)
    • Computer Science (21)
    • 회고 (7)
  • 홈
  • LinkedIn
  • Github
Total | Today
로그인
로그아웃 글쓰기 관리

쥐로그

컨텐츠 검색

태그

do...while 도커 허브에 배포하기 논리곱 연산자 이미지 배포 git hooks 단축 평가 SW 사관학교 코드 포맷터 KAIST 정글 CSAPP SW 정글 논리합 연산자 date range picker 코드 린터 저장소 웹훅 도커 허브 이미지 저장소 옵셔널 체이닝 연산자 컴퓨터 시스템 레이블 문 암묵적 타입 변환

최근글

댓글

공지사항

아카이브

CSAPP(4)

  • [CS:APP] 1-5~1-6) 캐시 메모리, 저장장치의 계층구조

    캐시가 중요하다! 1-4) 프로세서의 작동 원리에서 봤듯이, 시스템이 정보를 한 곳에서 다른 곳으로 이동시키는 일에 많은 시간을 보낸다. 기계어 인스트럭션들과 데이터 스트링들의 복사 과정을 간략하게 다시 정리해보면, 데이터의 복사 과정 1) 기계어 인스트럭션들 처음에는 하드디스크에 저장되어 있다. 프로그램이 로딩될 때 메인 메모리로 복사된다. 프로세서가 프로그램을 실행할 때 프로세서로 복사된다. 2) "hello, world\n" 데이터 스트링 처음에는 디스크에 저장되어 있다. 메인 메모리로 복사된다. 디스플레이 장치로 복사된다. 더 큰 저장장치들은 보다 작은 저장장치들보다 느리다. 그리고, 더 빠른 장치들은 더 느린 장치들보다 만드는 데 비용이 많이 든다. 1) 디스크 드라이브 vs 메인 메모리 구분 ..

    2023.03.10
  • [CS:APP] 1-4) 프로세서의 작동 원리

    프로세서는 메모리에 저장된 인스트럭션을 읽고 해석한다 [1-2) 컴파일 시스템]에 의해 실행가능한 목적파일로 번역되어 디스크에 저장된 hello 실행파일을 유닉스 시스템에서 실행하는 과정을 알아보자! 쉘 hello 실행파일을 유닉스 시스템에서 실행하기 위해서 쉘이라는 응용프로그램에 그 이름을 입력한다. linux> ./hello hello, world linux> 1) 쉘은 커맨드라인 인터프리터로, 프롬프트를 출력하고 명령어 라인을 입력 받아 그 명령을 실행한다. 2) 명령어 라인이 내장 쉘 명령어가 아니면, 쉘은 실행파일의 이름으로 판단하고 그 파일을 로딩해서 실행해준다. 👉🏻 위 경우, 쉘은 hello 프로그램을 로딩하고, 실행한 뒤에 종료를 기다린다. 3) hello 프로그램은 메시지를 화면에 출력..

    2023.03.06
  • [CS:APP] 1-2~1-3) 컴파일 시스템

    프로그램은 다른 프로그램에 의해 다른 형태로 번역된다 아래의 hello.c 프로그램이 시스템에서 실행되는 과정을 알아보자! 그 중에서 소스 파일이 번역되는 과정을 알아보자! hello.c #include int main() { printf("hello, world\n"); return 0; } 뭘 번역한다는 거야? hello.c를 시스템에서 실행시키려면, 각 C 문장들은 다른 프로그램들에 의해 저급 기계어 인스트럭션들로 번역되어야 한다. 이 인스트럭션들은 실행 가능 목적 프로그램( = 실행가능 목적 파일) 이라는 형태로 합쳐져서 바이너리 디스크 파일로 저장된다. 컴파일러 드라이버는 유닉스 시스템에서 아래와 같이 소스파일에서 오브젝트 파일로 번역한다. 👇🏻 GCC 컴파일러 드라이버는 소스파일 hello.c..

    2023.03.06
  • [CS:APP] 1-1) 비트와 컨텍스트

    정보는 비트와 컨텍스트로 이루어진다. 아래의 hello 프로그램이 실행되는 과정을 알아보자! hello.c #include int main() { printf("hello, world\n"); return 0; } 이 hello 프로그램은 프로그래머가 에디터로 작성한 소스 프로그램(= 소스파일)로 생명을 시작하며, hello.c라는 텍스트 파일로 저장된다. 소스 프로그램 ( = 소스파일 ) hello.c 프로그램은 연속된 바이트들로 파일에 저장된다! 소스 프로그램은 0 또는 1로 표시되는 비트들의 연속이며, 바이트라는 8비트 단위로 구성된다. 각 바이트는 프로그램의 텍스트 문자를 나타낸다. 대부분의 컴퓨터 시스템은 텍스트 문자를 아스키(ASCII) 표준을 사용하여 표시한다. 아스키(ASCII) 표준 아스..

    2023.03.06
이전
1
다음
Github LinkedIn

티스토리툴바