반응형

컴퓨터활용/유닉스 64

secure CRT 크랙하기

인터넷에서 퍼온 내용입니다만 1. scrt61.exe 설치를 한다. 2. SecureCRT-610-kg.exe 를 설치된 C:Program FilesVanDyke SoftwareSecureCRT 위치에 복사한다. 3. SecureCRT-610-kg.exe 를 실행 하시면 화면에 patch 를 한다. name, company 를 입력한후 generate 를 클릭 하면 serial, date, license key가 추출된다. 여기서 꼭 path를 꼭 하여야한다는거 중요하다. 동기화가 되지않으면 라이센스 키가 들어가지 않는다. 4. 마지막으로 SecureCRT.exe 를 실행하여 help>enter license data.. 에 들어가서 SecureCRT-610-kg.exe 에 추출된 내용을 넣으면 등록이 ..

전역변수와 정적변수의 차이점 : Difference Between Static & Global Variable

함수안에 선언된 변수는 그 함수를 빠져 나가면 사라진다. 할당되었던 메모리는 해제되고 저장되어 있던 값도 사라진다. 이러한 특성 때문에 자동변수(auto variable) 이라고 부르기도 한다. 그 함수 내에서만 유효하다고 해서 지역변수라고 부르기도 한다. 따라서 그 함수로 들어올 때 마다 변수가 다시 메모리 할당된다. 그래서 함수간 또는 파일간에 변수 값을 공유하고자 할 때는 전역변수(global variable) 또는 정적변수(static variable)를 사용하는데 이 두 변수간의 차이를 정확히 이해를 하고 사용해야 한다. 전역변수와 정적변수는 lifetime은 동일하다. 즉, 해당 프로그램이 죽을 때까지 한번 할당된 변수 메모리와 값은 유지된다는 점이다. 반면에 scope는 서로 다르다. 전역변..

dlsym error Function not implemented

dlcall 할 때 아래와 같은 오류가 발생했다면 function name 이 해당 라이브러리( .so) 안에 없는 경우이다. 실제로 그러한 이름의 function을 extern 으로 선언되어 있지 않거나 틀린 함수명으로 호출한 경우이다. Shared Library Name=[FEE][FEE09199_Main] BS_DlOpen START dlsym error Function not implemented (FEE09199_Main) 위의 경우 FEEO9199_Main 이 파일안에 extern 함수로 존재했으나 문자 O를 숫자 0 으로 잘못 타이핑한 경우였다.

배치실행파일의 입력값, 결과값 받기

쉘프로그램에서 입력 인자의 개수를 받아서 처리하는 부분 if [ $# -lt 1 ]; then echo "인자개수는 2개가 입력 되어야 합니다.인자갯수 [$#]"; echo " ex) $0 20110404 1 "; exit 100; fi echo "입력받은 인자 [$1] [$2]" 실행파일을 실행하고 그 결과를 받아서 에러처리 # 결과값 확보 ret=$?; # 프로그램 오류 확인 if [ $ret -ne 0 ]; then echo "오류종료"; echo "exit $ret"; exit 100; fi # 프로그램 정상 확인 if [ $ret -eq 0 ]; then echo "정상종료"; echo "exit $ret"; exit $ret; fi

VIM설정법 ( secure CRT 설정 )

vim 사용법에 대하여 잘 정리해 놓은 사이트가 있어서 메모를 해 놓는다. http://www.viper.pe.kr/cgi-bin/moin.cgi/Vim_팁 물론 .vimrc 설정하는 법이나 vim 프로그램을 설치하는 방법에 대하여서는 인터넷에 많이 나와 있으므로 생략하겠다. CRT 프로그램에서 vim 사용할 때 색깔 나오게 설정하는 법 vim 을 사용하면서 색깔이 이쁘게 잘 나오기 위해서 기존에 zterm이나 pineterm을 사용하였다. 오늘 secure crt 를 설치하고 처음 사용하여 보았는데 색깔이 안 나오고 글씨가 진하게 약하게만 나오는 것이었다. secure crt 에서 vim 색깔이 잘 나오게 하기 위해서는 Session Options 에서 Terminal->Emulation 에서 VT10..

dbx 사용 예제 ( IBM )

H프로젝트의 경우는 친절하게도 미들웨어( 티맥스 ) 단에서 코어파일이 발생되면 분석한 파일을 /logs/proframe/cbs/corelog/ 디렉토리에 서버_일자시분초.dbg 라는 파일 명으로 text 파일 형태로 떨어뜨려 주고 있어서 개발자가 원인을 쉽게 찾을 수 있도록 지원해 주고 있다. [cbssvd01@e9812978:/logs/proframe/cbs/corelog/20081021/SFEE5100A]ls -al total 88 -rwxrwxr-x 1 tmax tmax 5856 10월 21일 09:30 TX9812087_20081021093001.dbg -rwxrwxr-x 1 tmax tmax 5830 10월 21일 09:44 TX9812087_20081021094400.dbg -rwxrwxr-x..

정적 라이브러리, 공유 라이브러리, 동적 적재 라이브러리

차례1. 소개2. 정적 라이브러리3. 공유 라이브러리3.1. 관례들(Conventions)3.1.1. 공유 라이브러리 이름들3.1.2. 파일 시스템 배치3.2. 라이브러리 사용 방법들3.3. 환경 변수들3.3.1. LD_LIBRARY_PATH3.3.2. LD_DEBUG3.3.3. 다른 환경 변수들3.4. 공유 라이브러리 만들기3.5. 공유 라이브러리를 설치하고 사용하기3.6. 호환되지 않는 라이브러리들4. 동적 적재(DL) 라이브러리4.1. dlopen()4.2. dlerror()4.3. dlsym()4.4. dlclose()4.5. DL 라이브러리 예제5. Miscellaneous5.1. nm 명령5.2. 특별함수 _init, _fini5.3. 공유 라이브러리는 스크립트가 될 수 있다5.4. GNU l..

외부 binary 링크하여 컴파일하기

외부 파일에 함수를 만들어 놓고 별도 컴파일 한 후에 최종 실행 파일을 만들 때 이것을 같이 묶어서 컴파일 하는 것을 C 프로젝트에서 많이 사용하게 된다. 이 기초적인 작업의 샘플을 여기에 쉽게 써 보겠다. 두개의 파일을 작성한다. 하나는 func.c 이고 또 하나는 call.c 이다. func.c 에는 함수만 들어 있고 call.c 에는 main함수가 들어 있어 실행이 가능하게 된다. 먼저 func.c 를 다음과 같이 작성했다. #include long func_a(); long func_a() { printf("here is func_a!\n"); return 0; } 함수 이름 앞에는 return type 으로 long 을 지정 했다. 만일 static long func_a() 라고 선언하게 되면 ..

반응형