일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- ubuntu
- C
- 출력
- 칼국수
- Listen
- 디버깅
- vcore
- __func__
- 와각칼국수
- core file
- 인화여고
- IPv6
- 노트북 배터리 교체
- 차량진단
- kdumo
- 괌여행
- 20.04
- 인천
- thread pid
- gdb tip
- linux
- 다수 클라이언트
- spacse
- 노트북 정보
- 옛날 탕수육
- whatis
- 괌
- vi
- 껍질없는
- 리눅스
- Today
- Total
목록전체 글 (34)
극히 개인적이고 극히 대단하지 않은
예전에, 아마 90년대 중반 쯤이라고 기억되는데, 정기구독하던 마이크로소프트웨어라는 잡지가 있었다. 우리가 알고있는 그 마이크로소프트 회사와는 관련이 없지만 이름이 비슷해서 괜히 공신력이 있어 보이는 당시 유일한 IT전문 잡지였다. 당시 사무실에서 쓰던 내 PC는 나름대로 여러 개의 파티션을 목적별로 나누어 쓰고 있었는데, 요즘의 윈도우즈와 달리 여러개의 파티션에 대하여 동시에 사용율을 보여주지 못하다보니, 각각의 파티션에 대하여 [속성] 탭을 눌러서 용량을 확인해야했다. 이런 불편함을 없애기 위해 어셈블리를 이용하여 각 파티션의 크기와 사용율을 텍스트 기반의 막대그래프로 보여주는 툴을 하나 짜서 SpaceMon.exe이라고 이름짓고 혼자 쓰고 있었다. 한번은 옆에서 보던 동료가 괜찮을 프로그램이라고 마..
이 집은 지금은 대학생이 된 딸아이가 걸음마를 뗐을 무렵 처음 방문했던 것 같다. 당시는 현재 재개발로 없어진 인천대학교후문 건너 편 찻길에 위치하고 있었다. 집에서 좀 멀긴 했지만, 산책겸 야식먹으러 가기에는 적당한 거리였다. 중간에 인천대학교부지의 인화여고쪽으로 이전했다가 다시 그 길 건너편으로 이전을 해서 현재에 이르고 있다. 이 집의 대표메뉴는 이름에서도 알 수 있듯이 메밀우동이다. 검은색 통통한 면에 튀김부스러기를 잔뜩올려 먹으면 미끈한 면 사이사이 바삭하게 씹히는 식감도 맛의 일부로 작용했다. 사실 우동이라는 면에서만 보면 딱히 맛있거나 감칠맛나는 맛은 아니었지만, 허름한 가게의 분위기와, 당시 주머니 사정이 넉넉하지 않은 학생들의 밤을 달래주는 24시간 영업전략이 어느 정도 어우러져 꽤 유명..
환경은 ubuntu 20.04이다. 현장의 장비가 원인없이 reboot되는 경우가 있어서 kdump를 설정했다. 구글링한 정보들을 짜맞춰서 정상적으로 설정이 된 것 같은데 문제가 발생했을 때, reboot이 아니라 hang이 발생하고 crash정보도 생성되지 않아 더 난감한 상황에 빠진 적이 있다. 정상적으로 kdump가 설정된 것은 다음과 같은 정보들로 확인했다. USE_KDUMP가 1이고, current state가 ready to dump이면 kdump가 생성될 조건이 되었을 때, 생성이 되어야 하는 것이다. 이런데도 불구하고 kdump가 생성되지 않는다면, kdump를 위한 메모리 확보가 충분하지 않아 그럴 가능성이 높다. 콘솔에서 다음과 같은 부분이 발견된다면 더더욱... [ 3.598311] ..
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=dyhope&logNo=221371299803 뒤센 미소 vs 팬암 미소 이야기 생떽쥐페리(Antoine Marie-Roger de Saint-Exupery: 1900-1944). 어린왕자를&nbs... blog.naver.com
인천 청소년수련관으로 들어가는 장수동 근처에 수타면을 하는 중국음식점이 있어 간간히 들리곤 했는데, 어느 날 갔더니 그 집이 없어져서 좀 당황했던 일이 생겼다. 동네가 아니라 거길 갈려면 부담될 정도로 멀진 않지만, 어느 정도 마음을 먹고 가야하는 것이라 막상 도착했을 때, 그 집이 없어진 것을 알고나니 약간의 멘붕이 오기도 했다. 급히 가까운 다른 대체처를 찾은 곳이 오늘 이야기 할 이 집이다. 운전을 하면서 찾기는 쉽지 않은 위치에 있다. 주차할 곳도 마땅히 딱히 없다. 대충 음식점이 자리잡은 골목안 빈 곳에 '이정도면 괜찮겠지?' 하는 느낌으로 주차를 해야한다. 막상 음식점을 마주하면 '들어가도 괜찮을까?' 하는 갈등을 다시 한번 하게 만들정도로 가게의 전면은 허름하고 그다지 매력적인 모습은 아니다..
언젠가는 좀 상세하게 정리해야 겠지만, 그렇게 할 시간을 내기 전에 간단히, 잊어버리지 않을 정도로 기록을 남길 필요가 있어서 정리해둔다. 다수의 클라이언트에서 주기적으로 같은 시간 대에 데이터를 받아 처리하는 서버를 구현중이다. 클라이언트가 120대 정도 예상하고 있으니 최대 동시에 120 커넥션을 처리해야한다. 이러한 환경에서는 특정 커넥션에서 행이 발생한다던가 그로 인하여 다른 커넥션 및 시스템 전반에도 영향을 준다던가 하는 상황을 만들지 않기 위해, nonblock 소켓을 epoll 로 정확하게 제어하는 것에 매우 신경을 쓰게된다. 기본적인 시험을 통해서는 nonblock 소켓과 epoll 구현이 정확하게 예상대로 잘 동작함을 확인하였고, 120개의 클라이언트를 시뮬레이션할 시뮬레이터를 작성하여 ..
Windows10 기준으로 노트북 배터리 수명을 확인하는 방법이다. Windows11이나 Windows8도 가능할 것 같기는 한데, 확인은 못해봤다. 윈도우즈 명령어 창을 연다. (PowerShell에서는 명령이 먹지 않으니 반드시 일반 명령어 창을 열어야 한다.) 명령어 창에서 powercfg/batteryreport 명령을 입력한다. (powercfg 다음에 공백여부는 영향을 주지 않는다.) 정상적이라면 위와 같이 배터리 사용 시간 보고서가 저장되었다는 출력이 나온다. 파일 경로를 마우스로 긁으면 복사가 된다. 아무런 웹브라우저의 주소 창에 복사한 내용을 붙여넣고 엔터를 누르면 아래와 같이 보고서가 나온다. 설계용량, 최대 충전용량 및 만충횟수 등을 고려하여 배터리의 교체 또는 노트북의 교체시기를 가..
Multithread program을 작성하고 버그를 잡다보면 thread의 pid를 알아야 간지러운 곳이 해결되는 경우가 있다. 특히 gdb를 이용해서 디버깅을 하는 경우에 아쉬울 때가 많다. 그런 경우에는 thread 내부에서 다음과 같은 코드를 수행하면 자신 thread의 pid를 알 수 있다. syscall(__NR_gettid) 예를 들어 다음과 같이 코딩을 하면 thread 이름과 pid를 확보할 수 있다. #include #include #include void *sample_thread (void *arg) { ... printf ("Thread Information :: [%s][%d]\n", __func__, syscall(__NR_gettid)); ... pthread_exit (NU..