Computer
-
Visual Studio 2005에서 Library 겹쳐서 에러 나올 때 대처 방법Computer/Programming 2008. 9. 9. 00:03
VS98 프로젝트를 이용하는 다른 라이브러리 등을 링크하다 보면 링크 에러가 무수히 나오는데, 이 때 할 수 있는 방법이 링커 옵션에 /NODEFAULTLIB:"libcmt.lib" 과 같은 것을 추가해 주는 것이다. Project - Property - Configuration - Properties - Linker - Input - Ignore Specific Library 에 가서 겹치는 library들을 추가해 준다. 또는Command Line (명령줄) 에다가 /nodefaultlib:"libcmt.lib"과 같은 것을 추가하면 된다.
-
Win32 API List from MSDNComputer/Programming 2008. 8. 29. 15:04
MSDN Windows API Reference에서 추출하였다. http://msdn.microsoft.com/en-us/library/aa383749(VS.85).aspx Win32 API List - Alphabetical Order Win32 API List - By Category Alphabetical Order는 간단한 스크립트로 긁을 수 있다. 그러나 Category는 web page가 균일하지 않기 때문에 일부는 수동으로 했다. 다음은 긁는데 사용했던 프로그램 from urllib import urlopen import re webpage = urlopen('http://msdn.microsoft.com/en-us/library/aa383686(VS.85).aspx') text = webp..
-
Malware Detection Techniques CategorizationComputer/Program Analysis 2008. 7. 28. 20:20
Malware Detection What is the Definition of Malware? - Rule-based -- Define Normal and deny others (overapproximation) -- Define Abnormal and detect abnormal (underapproximation) - Signature-based How to Get Properties? -- Dynamic -- Static -- Hybrid
-
Code Optimization of VC++ withComputer/Program Analysis 2008. 6. 26. 15:39
VC++ 컴파일러가 function call을 할 때 일반적으로는 call instruction을 사용하지만, call 이후에 바로 return하는 경우에는 jmp instruciton을 사용하여 optimize 한다. 그림에서 41BAFE로 call하는 부분과 jmp하는 부분이 있다. jmp로 가면 41BAFE 함수에서 return 하면 41B851을 호출한 함수로 바로 return 하게 된다. 생각해 보면 이런 optimize는 항상 할 수 있는 것은 아니고, 실제 code에서의 function이 아니라 function chunk에 대한 call을 할 때 가능해진다. 이것은 Java bytecode에서의 jsr instruction과 유사한 방식의 optimize를 할 때 사용하는 것 같다. stac..
-
Comments on Free Linear Assignment Problem SolversComputer/Programming 2008. 6. 15. 00:22
실험 과정에서 Maximum Weight Bipartartite Matching 을 할 필요가 있었다. 이것은 OR에서 Linear Assignment Problem (LAP) 이라고 부른다. 이 과정에서 처음 알게 된 방식이 Kuhn의 Hungarian Method [Kuhn1955] 이다. Hungarian Method는 처음으로 polynomial time에 LAP를 해결 이 알고리즘은 Munkress에 의해 개선되었고 Lawler의 구현에서는 O(n^3) 알고리즘으로 개선되었다. (n은 node 개수, m은 edge 개수) 현재 실험에서 다루고 있는 문제 (n=10^3~10^4, m = n^2) 를 Hungarian Method로 실험해 보면 시간이 정말 오래 걸려서 끝나지 않는다. :) 현재 L..
-
Static vs. DynamicComputer/Program Analysis 2008. 5. 2. 11:13
Static vs. Dynamic • Static analysis: – Work done at compile-time – Characterizes all executions – Conservative: approximates concrete program states • Dynamic analysis: – Run-time overhead – Characterizes one or a few executions – Precise: knows the concrete program state – Can’t “look into the future” * unsound 한 analysis는 conservative하지 않은듯
-
IDAPro plugin 자동 실행Computer/Programming 2008. 4. 22. 16:15
IDAPro의 분석 및 실행을 동시에 하고 싶을 때 idag -A -Smyscript.idc input_file 을 해 주면 되고 myscript.idc에는 #include static main() { Message("Waiting for the end of the auto analysis...\n"); Wait(); Message("\n\n------ Running Plug-in --------\n"); RunPlugin("IDA2SQL",1); Message("All done, exiting...\n"); Exit(0); // exit to OS, error code 0 - success } Wait()는 autoanalysis가 끝날 때까지 기다리게 한다. RunPlugin으로 plugin을 실행해..
-
영문 Windows XP와 데스크탑 검색Computer/Software 2008. 2. 3. 20:38
원래는 GMail을 쓰기 때문에 Google Desktop으로 검색을 했었다. 그러다가, 컴퓨터가 문제가 생겨서 원래 컴퓨터에 들어 있었던 영문 Windows XP를 설치하였는데. 이런... 영문 WindowsXP에는 한글 Desktop Search를 설치해도 한글(hwp) 파일에 대한 색인이 정상적으로 만들어지지 않는다. 지금 봐서는 한글로 된 이름의 디렉토리 밑에 있는 파일들은 전혀 검색에서 잡을 수가 없다. 그래서 어쩔 수 없이 Microsoft Windows Search를 설치하려 시도했으나, 영문 Windows XP에서는 영문 Windows Search만 실행되고, 한글 Windows Search는 받지 않는다는 사실. 결국 Naver PC 검색을 설치할 수밖에 없었다. 한글 검색도 잘 동작하고..