블로그 이전: https://seokbeomKim.dev

Obsidian

Notion에서 Obsidian으로 갈아타기 요즘에 많은 사람들이 노션을 사용한다. 이력서나 개인 위키, 심지어 업무 협업툴로써 사용한다. 필자는 개인 위키 용도로 노션을 1년 정도 넘게 사용했다. 그 전에 사용해오던 이맥스의 org나 dokuwiki와 달리 별도의 서버 관리도 필요하지 않고 인터페이스도 미려했다. 애플리케이션까지 제공돼 매우 편리했다. 또한 기존 도구들이 가지고 있던 고질적인 문제였던 기기 간의 동기화 문제를 해결해 주었다. 하지만 노션에는 몇 가지 단점이 있다. 첫 번째는 확장성이 떨어진다. 여러 기능들이 추가되는 것 같기는 하지만 유저들이 직접 개발해서 사용할 수 없다.
Read more

급성 저음성 난청

지난 월요일 아침 눈을 뜨고 평소처럼 회사 출근 준비를 하려는데 한쪽 귀가 멍하더니 소리가 잘 들리지 않았다. 예전에 백신을 맞고 돌발성 난청이 왔었는데 그 때와는 약간 다른 느낌이라 회사에 도착하자마자 근처 이비인후과를 방문했다. 약을 처방받고 일을 하려는데 시끄러운 기내 소음같이 사람들이 얘기할 때마다 현기증이 날 정도로 소음이 너무 심해 결국 조퇴를 했다. 결국 다음날 인천에 좀 더 큰 병원을 가서 스트레스로 인한 난청이라는 진단을 받고 다량의 스테로이드를 처방받았다. 예전 돌발성 난청 때는 하루 이틀만에 약을 먹고 바로 나았었는데 바람소리, 기내 소음같은 저음성 이명이 일주일 째 없어지질 않는다.
Read more

strcpy

개요 한달 전 회사에서 리눅스 디바이스 드라이버 코드에 MISRA-C, CERT-C 룰셋들을 이용하여 정적분석을 하는 도중, strcpy 에 대한 warning 을 어떻게 처리할까 고민하다가 LWN 에서 Ushering out strlcpy() 라는 기사문을 읽게 되었다. string copy에 대한 글을 읽고 블로그에 정리하자고 했는데 이제서야 겨우 정리할 수 있게 되었다. 리눅스 커널에서 문자열 복사를 위해 만들어진 매크로들은 다양하다. 몇 개의 시리즈(?)가 있는데 정리해보면 다음과 같다. strcpy strncpy strlcpy strscpy strcpy strcpy를 나타내면 아래와 같이 간단하다.
Read more

프로세스 종료와 파일 디스크립터

파일을 open 했는데 close를 안하면? stdin(0), stdout(2), stderr(3) 이라는 정해진 공식과 함께 리다이렉션과 파이프의 개념만으로도 흥분하던 대학교 시절에 내가 알던 파일 디스크립터의 정의는 태스크가 파일을 열면 얻게 되는 고유 id값 이었다. 그리고 이러한 파일디스크립터는 항상 open 을 해주면 close 를 해줘야 한다고 배웠다. 그런데 막상 단순한 텍스트 파일을 open 한 뒤 프로세스 종료 전 close를 명시적으로 하지 않아도 이로 인한 오류는 발생하지 않는다. 그 전에는 단순하게 프로세스 종료 시에 파일 디스크립터도 함께 정리해주겠거니 하고 넘어갔던 내용이지만 본 글에서는 이 부분에 대해서 간단히(?
Read more

Device Tree Overlay

Ramoops 덕분에 알게된 오버레이 며칠전 리눅스에서의 Tracing 방법에 대해 공부하다가 찾아낸 세미나 영상에서 ramoops 라는 것을 알게 되었다. ramoops는 커널이 oops/panic 이 발생하면서 warm reset 되었을 경우 재부팅 이후에 pstore (persistent store)을 이용하여 이전에 기록된 dmesg 나 user 콘솔의 기록을 확인할 수 있도록 하는 logger 이다. ramoops 는 cold reset 이 되면 기록이 남아있지 않는다는 단점이 있어 최근에는 ramoops 대신 blk oops/panic logger 를 사용하기도 한다. 이러한 로거를 현업에서 사용하기 위해 사내 평가보드에서 먼저 확인해보았다.
Read more