Study: ComputerScience(CS)
[Network] HTTP 버전 별 특징: HTTP v0.9 v1.0 v1.1 v2 v3
💡 본 문서는 'HTTP 버전 별 특징: HTTP v0.9 v1.0 v1.1 v2 v3'에 대해 정리해놓은 글입니다. HTTP는 여러 과정을 거쳐 현재의 웹의 표준으로 자리잡게 되었는데, 하단에서는 HTTP의 역사와 함께 변천과정에 대해 살펴보며 HTTP에 적용된 기술에 대해 정리하였으니 참고하시기 바랍니다. 1. HTTP 란? HTTP는 Hyper Text Transfer Protocol의 약자로, 상당히 확장 가능하며 HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜입니다. HTTP는 웹에서 이루어지는 모든 데이터 교환의 기초이며, 클라이언트-서버 프로토콜이기도 합니다. 클라이언트-서버 프로토콜이란 (보통 웹브라우저인) 수신자 측에 의해 요청이 초기화되는 프로토콜을 의미합니다. 하나의..
[Linux] chmod 파일 권한 및 특수 권한 설정
💡 본 문서는 'chmod 파일 권한 및 특수 권한 설정'에 대해 정리해놓은 글입니다. Linux OS에서는 파일 및 폴더에 접근 권한이 존재합니다. 이로 인해 특정 파일에 접근할 때 'permissionError', 'Permission denied'와 같은 에러가 발생할 수 있는데, 이때 파일의 접근 권한 설정에 대해 알고 있다면 많은 도움이 될 것 같아 정리하였으니 참고하시기 바랍니다. 1. Linux에서 권한이란? 1.1 폴더 접근 권한 확인하기 'ls -al', 'll' 의 명령어에 경로를 붙이면 해당 경로에 위치한 파일들의 접근 권한(e.g. drwxr-xr-x)을 확인할 수 있습니다. $ ll / total 2097252 drwxr-xr-x 21 root root 4096 8월 31 13:5..
[OS] 쉘(Shell) 기본 문법: bash shell
💡 본 문서는 '쉘(Shell) 기본 문법: bash shell'에 대해 정리해놓은 글입니다. 쉴 스크립트 작성시 필요한 shell 기본 문법 및 쉴 설정 팁까지 정리하였으니 참고하시기 바랍니다. 1. 쉘(Shell) 기본 문법: bash shell Shell은 인터렉티브하게 대화식으로 CMD에서 명령어를 입력하여 사용하기도 하지만, 프로그래밍하여 *.sh 실행파일을 생성하여 논 인터렉티브하게 사용하기도 합니다. 1. 최상단에 #!/bin/bash 추가 - sh파일을 작성할때는 반드시 최상단에 #!/bin/bash 기록해줘야 해당 Shell을 통해 실행한다. 2. Shell 파일 실행 방법 ( ./ ) - sh / source / . 등을 이용해서 실행하면 권한이 없어도 수행이 가능하지만, ./ 로는 권..
[Network] C/C++에서 프로세스 간 통신
💡 본 문서는 'C/C++에서 프로세스 간 통신'에 대해 정리해놓은 글입니다. 프로세스 간 통신은 ip로 통신하는 것보다 빠른 일련의 과정을 통해 메모리를 주고 받고 있습니다. 이 방법 중 일부에 대해 정리하였으니 참고하시기 바랍니다. 1. 소개 많은 사람들이 무거운 작업을 분리하고 추가 최적화, 많은 독립성을 제공할 수 있기 때문에 프로그램을 위해 스레드보다 프로세스를 선택합니다. 예로 들어, Google 크롬 브라우저에서 각 탭을 실행하기 위해서 무거운 처리(예: 서버와의 통신, 네트워크 리소스 관리, 렌더링 등)을 해야하며, 각 탭은 매우 독립적으로 작동하기에 이는 프로세스를 사용하도록 작동합니다. 따라서 하나 프로세스 죽더라도 다른 프로세스에는 영향을 주지 않습니다. 또한 이 설계를 통해 비활성 ..