다양한 TIP215 vimrc map Ctrl + w 저장방법 vim을 사용하다보면 Ctrl + w (두번)을 이용하여 혹은 화살표를 이용하여 분할창을 이동하는 경우가 많이 있다. 컨트롤 두번 누르는거 대신 단축키로 넘기는 방법을 설명한다. map ^W^W 위의 설정을 .vimrc에 추가한다. 하나씩 설명하면, map으로 mapping을 한다는 의미로 단축키는 F2이다. 그 뒤에 ^W^W는 F2를 눌렀을 때 실행되는 키들이다. 그렇다면 ^W를 어떻게 입력하는가? Ctrl+v를 누른 다음 Ctrl+w를 누르면 입력이 된다. 같이 Ctrl만의 키는 매핑되는게 없기 때문에 위와 같이 사용하면 된다. 2019. 11. 29. Ubuntu 설치 후 apt-get update 실패시 확인할 것 우분투 서버용을 설치해보았다. ubuntu-18.04.3-live-server-amd64 처음 설치시 ssh 설정을 하지 않았기 때문에 apt-get update 후 apt-get install ssh를 하려고 했다. 하지만 아래와 같이 설치 실패.. 원인은 바로 nameserver에 있었다. /etc/resolv.conf 파일에 아래와 같이 nameserver를 추가한 후 재시도 하면 된다. nameserver 8.8.8.8 (구글) 다른 네임서버를 알고 있거나 설정해서 사용한다면, 해당 네임서버를 등록하면 된다. 2019. 11. 18. Linux Heap Memory 영역 해제(진짜 해제) Heap Memory를 사용하여 new, delete를 모두 다 했다. 하지만 stl을 사용하는 부분에 넣어왔을 때는 프로세스에서 메모리가 그대로 사용되고, 줄어들지 않았다. OS가 반환하지 않는 것으로 보이는데, 코드상으로 정확히 메모리 해제를 했기 때문에 코드상 문제는 없어보였다. 그럼 코드상 leak은 아닌데 캐시하고 있는건가를 보기 위해 해당 사이즈만큼 다시 new을 했을 때를 보았다. 결과는 추가적으로 메모리가 늘어나지 않았다. 이에 따라 stl에서 메모리를 물고 있는 것처럼 보였다. 이걸 OS가 반환해주지 않는 건지 stl 에서 물고 있는건지 모르겠다. 그러던 중 malloc_trim 함수를 찾았다. 이 함수는 코드상 해제했지만, 프로세스에서 잡고 있는 메모리를 free memory로 돌려준다.. 2019. 10. 23. gdb 내용 출력방법(batch) 코어덤프가 많이 남아있는 상황에서 디버깅을 할 때 난감할 것이다. 이유는 코어덤프 종류가 하나인가 여러개인가부터 파악하기에 너무 양이 많기 때문이다. 코어덤프들의 bt(backtrace)를 모두 출력하면 같은 녀석인지 아닌지 바로 판별할 수 있을 것이다. 이에 gdb 내용을 모두 출력하는 방법을 소개한다. gdb 는 기본적으로 코어덤프 파일과 함께 해당 binary를 인자로 넣어주면 된다. ex) gdb -c coredump_file test_bin /var/tmp/coredump/ 폴더에 아래와 같이 5개의 파일이 있다고 가정한다. core.1 core.2 core.3 core.4 core.5 하나씩 보려면 아래와 같이 명령어를 쳐야한다. gdb -c core.1 test_bin gdb -c core... 2019. 10. 17. 이전 1 ··· 46 47 48 49 50 51 52 ··· 54 다음 반응형