시스템 프로그래밍 3

[system programming] Program의 표현과 실행 2편 (Basic of Assembly Code)

본 게시글은서울대학교 데이터사이언스대학원 정형수 교수님의 데이터사이언스 응용을 위한 시스템 프로그래밍 강의를학습을 목적으로 재구성하였습니다 저번 시간에는 data movement의assembly의 general form을 배웠었다잠깐만 되짚어보자면 S는 스케일이라 주소값에 곱하는 값이고D는 Displacement라 주소값에 더하는 값이다 지난시간에 배웠던 leaq 연산자leaq는 주소값에 접근하는 것이 아닌단순히 주소값끼리만 연산하는 연산자였다그래서 더하기, 곱셈과도 같은 일반 연산에도많이 사용된다 주소값 연산의 예시이다위에서 봤던 leaq의 규칙과 동일하다괄호 앞에 오는 값은 D라 더하기괄호 안에 오는 값은 S라 %rcx에 곱하기를 해준다 이제 다른 Arithmetic Operation을 알아보자..

[system programming] Program의 표현과 실행 1편 (Basic of Assembly Code)

본 게시글은서울대학교 데이터사이언스대학원 정형수 교수님의데이터사이언스를 위한 컴퓨팅 시스템 강의를학습을 목적으로 재구성하였습니다이제 본격적으로 우리가 프로그래밍을 하면컴퓨터가 내부에서 어떻게 작동하고어떻게 코드들을 처리하는지 그 과정을 배워본다 우선 내가 짠 파이썬 코드를컴퓨터가 어떻게 해석하는지 알기 위해선하드웨어부터 이해할 필요가 있다 위 ppt에 소개되어있는 하드웨어는Intel의 x86 프로세서로서버시장에서는 굉장히 dominate한 하드웨어라고한다본 수업에서는 이 하드웨어를 예제로 수업을 진행한다 프로세서 칩의 종류는 크게Complex Instruction Set Computer(CISC)와Reduced Instruction Set Computer(RISC)로 나뉘는데보통 Intel 계열의 ..

[system programming] Big Picture of System Programming (강의 OT)

본 게시글은 서울대학교 데이터사이언스대학원 정형수 교수님의데이터사이언스를 위한 컴퓨팅 시스템 강의를학습을 목적으로 재구성하였습니다이번 학기에 수강하게된 컴퓨팅 시스템 강의일반적으로는 시스템 프로그래밍이라고 많이 부르는 컴퓨터 과목이다 원래도 난 컴퓨터 시스템이나 컴퓨터 구조와 같은컴퓨터의 low한 내용에 큰 흥미가 있는데이번에 학점 문제로 정규 수강은 못해서청강을 하게 되었다 내 학부인 고려대학교와는 다르게서울대학교는 청강 시스템이 체계적으로 되어있어서참 좋은 것 같다 고려대학교는 그냥 이메일로 교수님께 비는흔히 말하는 빌넣(?) 느낌이었는데서울대학교는 청강신청 시스템이 따로 있고청강이 승인되면 과제나 시험만 의무가 없을 뿐해당 과목을 자유롭게 들을 수 있고모든 수업 자료에도 접근할 수 있다(책임없는 쾌..