
signal과 event 1-1. kill은 용도에 맞지 않게 이름이 지어짐. 1-2. kill이 실행되면 signal을 프로세스에게 보냄. 1-3. signal은 software interrupt의 일종으로 어떤 event가 발생했음을 프로세스에게 알려주는 매커니즘. 1-4. 리눅스의 목록은 /usr/include/singal.h에 정의 되어있고, kill -l로도 전체 시그널 목록 확인 가능. signal handler 2-1. signal 발생은 비동기 작업이며, 개발자는 프로그램을 특정 시그널을 수신했을 때 실행되기를 바라는 함수를 등록가능. 2-2. signal handler를 지정하지 않았을 경우 커널에 기본 정의된 액션을 실행하고, 기본 액션은 시그널의 종류에 따라 다름. action 기본동..
Mac OS X Add Use command: sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ~/new-root-certificate.crt Remove Use command: sudo security delete-certificate -c “” Windows Add Use command: certutil -addstore -f “ROOT” new-root-certificate.crt Remove Use command: certutil -delstore “ROOT” serial-number-hex Linux (Ubuntu, Debian) Add Copy your CA to dir /usr/local/..
다운로드 # ./configure 만약 에러 발생하면 configure: error: Package requirements (libsodium) were not met: No package 'libsodium' found =============================== curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz tar xzf autoconf-2.69.tar.gz cd autoconf-2.69 ./configure --prefix=/usr/local make sudo make install sudo ldconfig cd ../libsodium-master ./autogen.sh ./configure make sudo make ..
quesadilla - 간단...
# 인증서 정보 확인 openssl x509 -noout -text -in TEST.CRT # 인증서 key 파일 패스워드 확인 openssl rsa -in TEST.KEY -out TEST.KEY -passin pass:'PASSWD' # 인증서 DER -> PEM 방식으로 변경 openssl x509 -in INPUT.CRT -inform DER -out OUTPUT.CRT -outform PEM # 인증서 pfx 파일로 변경(윈도우 용) openssl pkcs12 -export -in TEST.CRT -inkey TEST.KEY -out OUTPUT.PFX -passin pass:'PASSWD' -passout pass:'PASSWD'
#### 기본 설치 패키지 yum -y install cmake ncurses-devel ####mysql version 다운로드 후 압축풀기 tar zxvf mysql-boost-$VERSION.tar.gz #### CMAKE 세팅 cmake -DCMAKE_INSTALL_PREFIX=$PAT -DMYSQL_DATADIR=$DATA_PATH -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DMYSQL_TCP_PORT=3306 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_..
SUBDIRS에 하위 디렉토리 등록SUBDIRS = DIR1 DIR2 DIR3 DIR4 .... 뭔지 잘모름...PHONY: subdirs $(SUBDIRS) target: for DIRS in $(SUBDIRS); do \ $(MAKE) -C $$DIRS ;\ #여기서 DIRS에 $$ 두개붙여줘야 인식함 done clean: for DIRS in $(SUBDIRS); do \ $(MAKE) -C $$DIRS clean ; \ done
1. HTTP/2 개요- HTTP/2는 Google에서 개발한 SPDY에서 파생되었다.- 대부분의 브라우저에서 표준화 노력을 하였고, 15년 말 HTTP/2 지원을 추가.- W3Techs(웹기술조사사이트)에 따르면 17년 11월 HTTP/2를 사용하는 사이트는 20.5%- HTTP/2의 기본 프로토콜 단위는 프레임- 요청에 대한 멀티플렉싱은 각각의 HTTP 요청/응답 교환이 자체 스트림과 연결되도록 수행- 스트림은 대체로 서로 독립적이므로, 요청 또는 응답이 차단되거나 지연 되어도 다른 스트림을 방해하지 않음.- 흐름 제어 및 우선 순위 지정을 통해 다중화 된 스트림을 효율적으로 사용 할 수 있음.- HTTP/2는 서버가 클라이언트에 응답을 보낼 수 있는 새로운 상호 작용 모드를 추가함.- 연결에 사용되..
Visua Stduio Code 자주 사용하는 단축키 윈도우와 리눅스는 단축키가 같고, 맥은 대부분 cmd -> ctrl 로 생각하면 된다. f5 # 디버그 시작/정지 shift + f5 # 디버그 중지 f9 # breakpoint on/off f10 # 디버그 현재 라인 실행 f11 # 디버그 함수의 경우 함수 내부로 들어가서 실행 f12 # 함수 정의 가기 shift + f12 # 현재 함수를 참조하는 부분 보기 alt + shift + f # 포맷팅 alt + shift + i # 선택된 영역에서 각 라인의 끝에 커서 insert ctrl + ` # 통합 터미널 열기 ctrl + n # 새문서 열기 ctrl + s # 현재 문서 저장 ctrl + p # 빠른 파일 열기 ctrl + d # 선택(se..
컴파일러 매크로리스트 http://sourceforge.net/p/predef/wiki/OperatingSystems/GCC 컴파일러 매크로리스트 http://gcc.gnu.org/onlinedocs/cpp/Predefined-Macros.html gcc 예제#ifdef _WIN32 //define something for Windows (32-bit and 64-bit, this part is common) #ifdef _WIN64 //define something for Windows (64-bit only) #endif #elif __APPLE__ #include "TargetConditionals.h" #if TARGET_IPHONE_SIMULATOR // iOS Simulator #elif TA..