전체 카테고리 336

[GDB] 자주 쓰는 명령어

보통 프로세스가 죽고나서 dump된 core 파일을 보다보니그때마다 사용하는 명령어를 매번 검색해서 찾기가 불편하여이곳에 모아서 보려함. * GDB 명령어2017.12.29 심볼 테이블에 대해 확인하기 위한 명령어 예시구조체 안의 정보를 찾아서 확인한다고 봐도 될 것 같다. (gdb) bt (gdb) frame 9 #9 0x00002b459abc0e5f in test_GenCancelTrct (pStParser=0x7bb3590, pStTrct=0x2aab1a951e50) at test_Utility.c:834 834 test_Utility.c: 그런 파일이나 디렉토리가 없음. in test_Utility.c (gdb) whatis pStTrct type = stTrct_t * (gdb) ptype pS..

엔지니어 2016.11.17

Unsupported major.minor version 52.0 Error in Java (ubuntu 14.04)

참고: http://stackoverflow.com/questions/22489398/unsupported-major-minor-version-52-0 빌드는 1.8 JDK에서 해놓고 톰캣에 올려서 돌릴때는 1.7 JDK에서 돌린 경우 발생할 수도 있다고하는데역시나.. ㅜ.ㅜ OS: ubuntu 14.04 # update-alternatives --config java대체 항목 java에 대해 (/usr/bin/java 제공) 3개 선택이 있습니다. 선택 경로 우선순� 상태------------------------------------------------------------* 0 /usr/lib/jvm/java-8-oracle/jre/bin/java 1072 자동 모드 1 /usr/lib/jvm/j..

엔지니어 2016.07.18

futex 함수 (Fast User muTEX)

strace로 프로세스 상태를 체크하다가 보게 되었습니다. FUTEX 란?   출처 : http://www.hanbit.co.kr/preview/1492/sample_chap01.pdf리눅스 커널 2.6에는 새로운 프로세스 간의 통신으로 FUTEX라는 것이 있습니다. 이것은 동일 머신 상의 복수 프로세스 간에 잠금(Lock) 처리를 합니다. 동일 페이지를 프로세스에 매핑하고, 그 위에 잠금 변수를 공유하게 함으로써 경합이 발생하지 않는 한 시스템 콜 개입 없이 잠금 처리를 할 수 있습니다. 많은 프로 세스나 스레드가 협조하여 동작하는 응용 프로그램에서는 매우 유용한 구조입니다. FUTEX_WAIT ?                           출처 : https://meenakshi02.wordpre..

엔지니어 2016.02.04

org.codehaus.plexus.classworlds.launcher.launcher 못 찾고 maven 실행 불가

MAC에서 brew install maven 으로 설치한 이후 mvn 명령을 수행했더니 에러가 계속 발생. org.codehaus.plexus.classworlds.launcher.launcher을(를) 찾거나 로드할 수 없습니다 원인은 ~/.bash_profile에 설정한 M2_HOME이 잘 못되었다.brew로 설치한 것의 버전은 3.x.x이므로 M3_HOME으로 설정해야함. export M3_HOME=/usr/local/Cellar/maven/3.3.9export M3=$M3_HOME/bin 설정한 이후로 정상 동작함.아무래도 환경변수 설정은 버전에 의존하지 않게 해야할 것 같다.나중에 4.x.x 버전나오면 같은 오류 반복될지도 모르니..

엔지니어 2016.02.02