본문 바로가기
  • 초부득3 - 어제보다 나은 내일을 위해
  • 꿈이 현실이 되는 날까지

sw사관학교 정글 2기/컴퓨터 시스템11

임시저장 보호되어 있는 글 입니다. 2021. 9. 28.
유용한 링크 정글 1기 수료생이누 허승님의 cs 공부 가이드라인 https://github.com/seanlion/jungleYourselfCS csapp 숙제 문제 정답 사이트, https://dreamanddead.github.io/CSAPP-3e-Solutions/chapter11/11.11/ 11.11 - CASPP 3e Solutions 11.11 from rfc2626 section 9.4 HEAD The HEAD method is identical to GET except that the server MUST NOT return a message-body in the response. tiny.c changes --- tiny.origin.c 2021-02-25 07:26:33.302592754 +000.. 2021. 9. 27.
Tiny 웹 서버 소스코드 분석 및 웹서버에 대한 것들. 목차 개요 Tiny라고 부르는 작지만 동작하는 웹 서버입니다. 이는 프로세스 제어, Unix I/O, 소켓 인터페이스, HTTP 와 같은 많은 개념들을 결합했습니다. fd = file descriptor 파일 식별자 함수 기초 선언 main doit clienterror read_requesthdrs parse_uri get_filetype serve_static serve_dynamic adder.c 0. 기초 선언 /* $begin tinymain */ /* * tiny.c - A simple, iterative HTTP/1.0 Web server that uses the * GET method to serve static and dynamic content. * */ #include "csapp.h.. 2021. 9. 24.
네트워크 - Protocol, TCP/IP, OSI 계층, TCP, UDP, HTTP 등등 중요 링크 및 출처들! OSI 7계층부터, TCP/IP, TCP 와 UDP 의 연결 방식, HTTP/S 등등 네트워크 전반을 간결하고 명확하게 설명해준다 https://github.com/WeareSoft/tech-interview/blob/master/contents/network.md#osi-7%EA%B3%84%EC%B8%B5 TCP 프로토콜의 기능 및 특징 - 패킷 분할과 연결형 통신을 아주 명료하고 구체적으로 설명해준다!@ 그리고 다른 내용도 엄청 많다! 강추강추! https://better-together.tistory.com/140 목차 통신 프로토콜이란 우선 통신 프로토콜 ( communication protocol ) 이란 어렵게는 시스템과 애플리케이션 프로그램에서 정보를 교환할 수 있도록.. 2021. 9. 16.
malloc - 동적 메모리 할당기 - 소스 코드 해석 목차 동적 메모리 할당기란? 동적 메모리 할당기는 런타임에 추가적인 가상메모리를 획득할 필요가 있을 때 사용합니다. 이는 힙 heap 이라고 하는 프로세스의 가상메모리 영역을 관리합니다. 힙은 다양한 크기의 블록들의 집합으로 구성되고, 각 블록은 할당(allocated) 되었거나 가용(free)한 상태를 가집니다. 가용한 블록들을 할당을 위해 사용할 수 있습니다. 여러 종류의 free list 관리법으로 구현 난이도 혹은 실행 성능등을 개선 할 수 있습니다. 유용한 참고 자료 링크: https://velog.io/@emplam27/CS-%EA%B7%B8%EB%A6%BC%EC%9C%BC%EB%A1%9C-%EC%95%8C%EC%95%84%EB%B3%B4%EB%8A%94-%EB%A9%94%EB%AA%A8%EB.. 2021. 9. 11.
c - 비트 연산자, 매크로 자료 출처: https://dojang.io/ 코딩 도장 dojang.io 목차 연산자 https://dojang.io/mod/page/view.php?id=172 비트 연산자 &, | 을 이용한 비트 연산 & 연산자 두 비트가 모두 1일 때만 1. or ( | ) 연산자 두 비트가 모두 0 일 때만 0. **비트 연산의 의미 및 이해** 비트란 디지털에서 정보를 표현하는 가장 기본적인 단위. C 언어에서 가장 작은 크기의 변수는 char 로 1byte 크기이다. 아이러니하게도 C 언어에서 이진수를 표현하는 방법은 없다. 2 진수 대신 16 진수로 표현하는데 이는 편의성 때문이다. 2진수를 16진수로 변환하는 방법은 하위 4비트와 상위 4비트를 나누어서 계산하기만 하면 된다. 이진수 0110 0100 은.. 2021. 9. 10.
Malloc Lab - assignment 목차 개요 직접 실제로 동작하는 나만의 malloc, free, realloc 함수 만들기 사실상 메모리 관련 자료구조를 구현하는 실습. linked_list와 유사하다. lab ( git 자료) 사용법. 내가 수정 할 수 있는 파일은 오로지 mm.c 입니다. mdriver.c 는 내 mm.c 의 성능을 검증 해 볼 수 있는 도구 입니다. mdriver.c 사용법: 1. make 로 driver code 생성 2. ./mdriver -V 로 실행. (-V 는 유용한 정보들을 표시해줍니다.) 완성해야 할 함수: int mm_init(void); void *mm_malloc(size_t size); void mm_free(void *ptr); void *mm_realloc(void *ptr, size_t s.. 2021. 9. 9.
Red Black Tree - 소스 코드 해석- 목차 자료 출처 및 참고 링크 강의 자료 출처 : https://www.youtube.com/c/DdmixBlogspot/featured Jake Lee Digital Dynamics ~ http://ddmix.blogspot.com C++로 배우는 알고리즘, 스케치업 등의 동영상 강의를 싣고 있습니다. www.youtube.com 강의 자료 노트: https://bdbest.tistory.com/150 소스 코드 링크: https://github.com/leejaku17/cppalgo_2002/blob/master/Week3/Search/RBTreeMap.h#L49 소스 코드 링크의 코드를 참고하여 구현하였습니다. 1. rbtree.h, 헤더 파일 #ifndef RBTREE_H_ #define RBTR.. 2021. 9. 7.
이진 탐색 트리 - binary search tree - 퍼옴 https://digiconfactory.tistory.com/entry/C%EC%96%B8%EC%96%B4-%EC%9D%B4%EC%A7%84-%ED%83%90%EC%83%89-%ED%8A%B8%EB%A6%AC-Binary-Search-Tree-%EB%A7%8C%EB%93%A4%EA%B8%B0-%EC%B6%94%EA%B0%80-%EC%82%AD%EC%A0%9C-%EA%B2%80%EC%83%89 C언어 | 이진 탐색 트리( Binary Search Tree) 만들기 | 추가, 삭제, 검색 이진 탐색 트리 C언어 *이진검색트리 (Binary Search Tree)의 조건 - 이진 트리는 루트를 중심으로 노드가 왼쪽에 하나 오른쪽에 하나씩 연결된다. - 노드 N(어느 한 노드)을 기준으로 왼쪽 트리의 키값 d.. 2021. 9. 6.