pid의 사전적 의미는 프로세스 인식자(Process identifier)로서 프로세스가 실행 될 때에 붙여지는 번호인데요, 그렇다면 이 pid의 최대값은 어떻게 결정될까요? 우선 kernel source를 살펴보면, kernel code 내부에 아래와 같이 pid_max값을 proc으로 남기도록 명시되어 있습니다. (linux kernel 2.6.20 version) .ctl_name = KERN_PIDMAX, .procname = "pid_max", .data = &pid_max, .maxlen = sizeof (int), .mode = 0644, .proc_handler = &proc_dointvec_minmax, .strategy = sysctl_intvec, .extra1 = &pid_max_m..
HIGH-END MECHANICAL KEYBOARD LEOPOLD FC300R SERIES 드디어 구매 했다, 예전부터 애타게 소유하고 싶던 기계식 키보드, 인터넷으로 사는것 보다는 실제로 키감을 느껴보고 비교한 이후에 구매하고 싶은 욕심이 있었기에 기계식 키보드를 파는 오프라인 매장을 찾아가야만 했다, 일단 용산에 "아이오매니아" 오프라인 매장이 있기에 찾아가는 것은 무리가 없었으나.. 주말에는 영업을 하지 않고, 주중에는 오후 7시에 문을 닫으니... 사실 퇴근 이후에 용산까지 달려가도 영업 시간을 맞추기는 힘들었다, 하.지.만 !! 다행스럽게 이번 추석 연휴, 회사에서 주중에 임시 공휴일을 둬서 용산 "아이오매니아" 오프라인 매장을 찾아갈 수 있었다. 서론이 다소 길었는데, 일단 찾아가는 길은 "아..
[kthreadd] : 커널 스레드를 생성한다, 모든 커널 스레드의 부모가 된다. [migration/0] : 프로세서 사이에서 프로세스들을 이주시켜주는 CPU에 각각 존재하는 커널 스레드 [ksoftirqd/0] : tasklet(소작업)을 실행한다. –(softirq, tasklet) [watchdog/0] : 하드웨어 watchdog뿐만아니라 소프트웨어 watchdog도 포함한다. 시스템이 비정상적으로 동작시, 끄고 재부팅한다. [events/0] : (keventd) : keventd_wq 작업 큐(workqueue)에 있는 함수들을 수행. –(워크큐) [khelper] : 커널의 일부.. [kblockd/0] : kblockd_workqueue 작업 큐에 있는 함수를 수행한다.–(워크큐) 블록 ..
리눅스의 메모리 메커니즘은 application에서 메모리를 사용하고 반환할 때에 바로 소진되지 않고, cache되어 있다, 그리고 cache를 재사용하는것이 리눅스의 기본적인 동작인데, 강제로 cache를 비우는 방법을 알아봅니다. 우선 cache는 /proc/sys/vm/drop_caches 경로에 있고, 이 경로에 1~3의 값 입력을 통해 cache가 비워지게 됩니다. 그렇다면 각 number에 대한 의미를 알아봅니다. 1 : To free pagecache 2: To free dentries and inodes 3: To free pagecache, dentries and inodes This is a non-destructive operation and will only free things t..
Sigma 70-300 apo 망원 렌즈 밖에 없던 터라.. 뭔가 조합이 아쉬운 점이 많았다, 이를테면.. 가까운 사물을 찍을 수 없다는 점과, 동영상 촬영에 무리가 있다는 점, 그리고 어두운 곳에서.. 한없이 작아지는 내 70-300 렌즈... 그래서!! 그 모든 부분을 커버하기 위해 고른 렌즈는 바로바로 Canon EF50mm f/1.8 II (일명 쩜팔) 인터넷 평이 너무 좋고, 평소 눈 여겨 보던 렌즈인 터라, 의심할 여지가 없이 지르기로 결심, 마침 신도림 테크노마트를 지나는 길이라 바로 구입했다, 인터넷으로 구매하는것과 가격차이가 크지 않았으므로, 기왕이면 오프라인을 좋아하는 ... 우선 구매하자마자 테스트샷, (바디를 들고 있던터라 바로 테스트샷이 가능했다) 이건 렌즈 박스 , 역시 아웃포커..
회선 대역폭을 측정하기 위한 툴로 다양햔 open-source가 존재합니다. 이번 포스팅은 그 중 가장 강력한(?) 툴인 iperf를 설명하고자 합니다 (굉장히 주관적인 생각). 우선 source는 여기에서 다운 받고 compile은 README에 있는 내용처럼, ./configure -- configure for your machine make -- compile Iperf 두가지만 해주면 됩니다. 간단하지 않은가요? compile 이 완료되었으면 회선 대역폭을 측정하고자 하는 장비(혹은PC)에 compile의 결과물인 iperf를 넣어주기만 하면 준비는 끝입니다. 이제 옵션을 알아 볼텐데, document 보다 더한 설명이 어디있을까요, 우선 document 를 참조합니다, 자세하게 옵션에 대해 설명..
보통 구조체의 사이즈라 하면 구조체 내에 선언되어 있는 모든 변수의 총합을 TOTAL로 여깁니다. 얼핏 보면 당연한 결과지만, 컴파일러는 그렇게 못합니다. 이는 컴파일러 내에서 구조체 관련 루틴을 수행할 때에 좀 더 빠른 연산을 위함인데, 그렇다면 어떻게 다른지 알아봅니다.#include typedef struct test{ int a; long c; char b; char d:1, e:1, f:1, g:2, i:1, k:1; long h; } test; int main(void) { test k; k.g=1; // printf("a:%d \n",k.g); printf("size : %d\n",sizeof(k)); return 0; } 간단한 코드입니다, test struct의 사이즈는 얼마일까요? 64..
pthread_cond_wait는 thread를 휴먼 상태로 만듭니다(해당 라인에서 thread의 동작이 멈추는 상태). 이 말은, 일종의 sleep 상태라고 생각해도 되는데, 휴먼 상태에 빠져 있는 이 thread는 다른 thread에서 pthread_cond_signal을 이용해서 깨웁니다 (깨워지게 되면, 그때 부터 pthread_cond_wait 의 다음 라인 코드가 실행됩니다). 그렇다면 다수의 pthread_cond_wait가 존재한다면, pthread_cond_signal은 어떤 pthread_cond_wait를 깨울까요? 답은 아래 있습니다. 일단 함수 생김새를 살펴보면 아래와 같고, int pthread_cond_signal(pthread_cond_t *cond); int pthread_..
자주 사용할 일이 없다보니.. 자주 잊고 구글링을 통해 정보를 얻게 되는데 이번 포스팅을 통해 구글링이 아닌 블로그를 통해 정보를 얻어야겠습니다, mysql 접속 mysql -u 유저 -p 패스워드 db 목록 확인 show databases; 특정 db 사용 use databases; 테이블 목록 확인 show tables; 테이블 상태 체크 check tables 테이블명 테이블 repair repair tables 테이블명 테이블 구조보기 desc 테이블명 테이블 내용 전체보기 select * from 테이블명 테이블의 특정 필드 보기 ( 콤마로 필드 구분, 또한 where 연산 가능) select 필드1,필드2 from 테이블명 특정 테이블 내용을 파일로 select * from 테이블명 into ..
마땅히 취미 생활이 없었던 터라 겸사겸사 카메라(Canon 500D) 구입ㅋㅋㅋ 주변에서는.. 취미의 대가 치고는 좀 무리하는것 아니냐 했지만... 열심히 일한 내게 간만에 포상 ~ 기다리던 카메라 드디어 배송 완료 v'ㅁ'v (사실 2틀 정도 걸렸나) 생각보다 바디가 작다, 히히 귀엽네 정면 샷ㅋㅋ 목줄도 이쁘게 연결하고, 다른 DSLR과 비슷한.... 디스플레이.. (앗 범블비 아이폰 +_+) 기본 번들을 포기하고 구매한 시그마APO 70-300 망원 'ㅁ'v 요건 생각보다 좀 길다 ㅋㅋㅋㅋ 아이폰으로 찍은 사진인데, 요것도 접사 모드 동작하니까 아웃포커싱이 되네... 뜬금 없지만 역시 대세는 애플.. 시대는 아이폰을 기억하겠지, 애플을 기억하는것이 아니라... 마운트 시키고 기념ㅋ 조만간 거울샷도 ..
우선 정보통신표준위원회를 참고해보면 2010-12-23 제개정일로 DTLS에 대한 정의가 담겨 있습니다, 출처 : http://www.tta.or.kr/index.jsp 표준번호 : TTAE.IF-RFC4347 제개정일 : 2010-12-23 한글 표준명 : 데이터그램 전송계층 보안 (DTLS) 프로토콜 영문 표준명 : Datagram Transport Layer Security 한글 내용요약 : DTLS 프로토콜은 데이터그램 프로토콜을 위한 통신 프라이버시를 제공한다. 이 프로토콜은 클라이언트/서버 응용 프로그램이 통신하는 과정에서 도청, 간섭, 위조를 방지하기 위해서 설계되었다. DTLS 프로토콜은 전송 계층 보안(TLS) 프로토콜에 바탕을 두고 있으며 동등한 안전성을 보장한다. 기초적인 전송의 데이..
◈ decompress 확장자 : .tar (묶음 개념) tar xvf 확장자 : .tgz || .tar.gz (묶음이 압축되어 있는 개념) tar xvfz (tar의 버전에 따라서 z옵션이 f보다 앞에 있어야 인식하는 경우도 있습니다.) x : extract v : verbose f : file z: gzip ◈ compress 확장자 : .tar (묶음 개념) tar cvf 확장자 : .tgz || .tar.gz (묶음어서 압축하는 개념) tar cvfz tar cvfz c : create v : verbose f : file z: gzip MAN tar NAME tar - The GNU version of the tar archiving utility SYNOPSIS tar [options] Ope..
printk("[%s %d] %s call %p \n", __FILE__, __LINE__, __FUNCTION__, __builtin_return_address(0)); __FILE__ 해당 코드의 파일 위치 출력 __LINE__해당 코드의 라인 출력 __FUNCTION__해당 함수 출력 __builtin_return_address(unsigned int level)해당 함수를 콜한 주소 출력 (level은 call stack 위치, 0->바로 호출한 함수 1-> 그 함수를 호출한 함수) 출력 결과 [include/net/dst.h 238] dst_input call 4033efac
DHCP messages Message Use ------- --- DHCPDISCOVER - Client broadcast to locate available servers. DHCPOFFER - Server to client in response to DHCPDISCOVER with offer of configuration parameters. DHCPREQUEST - Client message to servers either (a) requesting offered parameters from one server and implicitly declining offers from all others, (b) confirming correctness of previously allocated addre..
편집모드 (i,o 등로 입력할 수 있는 상태) 명령 모드(편집모드에서 esc key를 누른상태) 기 타 A 현재라인의 끝부터 문자 삽입 a 커서 다음부터 문자 삽입 I 현재라인의 처음부터 문자 삽입 i 커서 이전부터 문자 삽입 O 커서의 윗라인에 새로운 라인첨가 (처음부터 문자 삽입) o 커서의 아래 라인에 새로운 라인첨가 (처음부터 문자 삽입) r 커서위치의 한문자 치환 R 커서위치에서부터 계속 치환 cw 한 단어 치환 C 한 라인 치환 c$ 현재부터 라인끝까지 치환 cG 현재부터 파일끝까지 치환 cL 현재부터 화면 끝까지 치환 c) 현재 구 치환 c} 현재 절 치환 ~ 소문자와 대문자 서로 치환 xp 두 문자 자리바꿈 n>> n(숫자)만큼 이동 CTRL + I tab ..
심심할때 한번씩 보면 재미있는 Linux man page..이번에는 iptables 공략입니다, iptables(8) - Linux man page Name iptables - administration tool for IPv4 packet filtering and NAT Synopsis google_protectAndRun("render_ads.js::google_render_ad", google_handleError, google_render_ad);iptables [-t table] -[AD] chain rule-specification [options]iptables [-t table] -I chain [rulenum] rule-specification [options]iptables [-t ta..
#define SIGRTMIN 32 #define SIGRTMAX _NSIG #define _NSIG 64 정규 시그널(sig.1~31)의 action및 Comment는 아래와 같이 확인 (시그널 번호는 하드웨어 구조에 따라 다릅니다) # Signal name Default action Comment POSIX 1 SIGHUP Terminate Hang up controlling terminal or process Yes 2 SIGINT Terminate Interrupt from keyboard Yes 3 SIGQUIT Dump Quit from keyboard Yes 4 SIGILL Dump Illegal instruction Yes 5 SIGTRAP Dump Breakpoint for debuggi..
# /etc/services:# $Id: services,v 1.40 2004/09/23 05:45:18 notting Exp $## Network services, Internet style## Note that it is presently the policy of IANA to assign a single well-known# port number for both TCP and UDP; hence, most entries here have two entries# even if the protocol doesn't support UDP operations.# Updated from RFC 1700, ``Assigned Numbers'' (October 1994). Not all ports# are in..
- Total
- Today
- Yesterday