호텔이 다 좋은데 유선 인터넷이 없다. 벽에 cat 6라고 정확하게 적혀있어 랜 선을 꼽았다. 제길, 머텅구리 포트다. 왜 멍텅구리 포트를 2개나 방에 설치했는지 모르겠다. 이런 ㅅㅂ.. 전에 가격을 최대한 줄여 만든 종이박스 PC를 인터넷에 물릴 수 없었다. 지금 와이파이 모듈을 사면 PC 값 나올까봐 연결하지 않았다. 고민 끝에 휴대폰 테더링으로 인터넷에 연결했다. 속도 700KBps는 너무나…… 자율적 자가 격리 썰 계속 읽기
c 더블 포인터 이해하기.
c는 포인터가 혼란스러운데 이해했다고 믿고???? 나중에 다시 생각하려고 남긴다. 다음 코드를 만들었고 실패했다. bufToStruct를 실행할 때 포인터로 넘겼어도 buf를 받으면서 임시 공간에 변수를 만든다. 함수 실행을 끝내면서 그 공간도 날아가 도로묵 된다. #include <stdio.h> #include “module1.h” int main() { struct mysqlStruct oneSqlData; char readbuf[MAX_LEN]; int ret; openfile(readbuf); printf(“버퍼는 %s\n”,readbuf); do{ ret=bufToStruct(readbuf, &oneSqlData); printf(“%p\n”, readbuf); sleep(1);…… c 더블 포인터 이해하기. 계속 읽기
Linux System Programming
isbn: 978-1449339531 사 보진 않았지만 참 유용하다. 인터넷을 검색하면 pdf를 쉽게 찾을 수 있다. 400 페이지 책을 자세히 읽고 있으면 지친고 괴롭다. 예제 중심으로 읽고 세세한 나머지 부분을 통과 했다. 나중에 필요할 경우 다시 찾아 보면 된다. 다만 예제는 직접 실행했고 조금씩 수정해 보았다. 전에 도서관에서 비슷한 책을 빌렸는데 그때 왜 이런 책을 읽는지 이해가…… Linux System Programming 계속 읽기
signal, page 342
signal 예제. shell에서 kill -l로 해당 PID에 시그널을 보낼 수 있다. #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <signal.h> /* handler for SIGINT */ static void signal_hanlder (int signo) { /* * Technically, you shouldn’t use printf() in a * signal handler, but it isn’t the end of the * world. I’ll discuss why in…… signal, page 342 계속 읽기
anonymous memory mapping, p308
https://www.miroch.ru/2017/01/17/linux-process-memory-layout/ proc pid maps 여기를 참조 했다. #include <stdio.h> #include <sys/mman.h> int main(int argc, char *argv[]) { char *ptr; int ret; ptr = (char *) mmap((void *) 0x10000, 512 * 1024, PROT_WRITE|PROT_READ, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0); printf(“page size is %0x\n”,getpagesize()); printf(“ptr is %p\n”,ptr); sleep(10); /* all done with ‘p’, so give back the 512 KB mapping…… anonymous memory mapping, p308 계속 읽기