동글동글 라이프
드디어 마지막 날입니다. 오늘의 배울 내용은 아래와 같습니다. 파일, 디바이스 드라이버. - 파일시스템 (가상파일시스템, 다형성) - 레이어드 개발법 - 커널 내 시스템 콜 추가 - 커널 모듈 프로그래밍 - 디바이스드라이버 개요 - 인터럽트, 문자 디바이스 드라이버 구현 파일 시스템을 어떤식으로 접근해서 알려주실지 기대가 됩니다^^ 대부분 커널 소스를 직접 까면서 보여주시니 단순이 그림이 아닌 눈으로 보이는 부분이 확실하니 휘발성이 아닌 비 휘발성으로 머릿속에 오래 남아 있을 듯 하네요 :) - cat 명령어 짜보기 1 2 3 4 5 6 7 8 9 10 11 12 #include #include int main(void){ int fd,ret; char buff[1024]; fd = open("cat.c..
교육의 둘째날입니다 :) 사진출처 : http://news.joins.com/article/483/4262483.html?ctg=14 새벽4시쯤 깨어 축구를 시청했는데 보자말자 한골~ 그리고 후반에 또 한골~ 아슬했지만 한국이 16강에 가게되어 너무나 좋더군요^^ 16강 상대가 우루과이라 할만하다는 생각도 들구요~ ㅋㅋ 하지만 저는 교육을 받으로 왔으니 교육에 관련된 이야기를 또 해보겠습니다. 오늘은 어제 이야기를 들었던 Signal 에 대해서 더 세부적으로 배웠습니다. 햐.. Signal 이 이렇게 많은 기능을 가지고 있다니.. perl 을 하면서도 signal 은 그냥 죽었을 때 다시 처리할때나 쓰는 줄 알았는데 심도있게 알아야 한다는것을 알았습니다. - 커널 컴파일하는 방법 kernel.org 에서..
운이좋게도 Linux Kernel 교육을 신청했는데 제가 담첨이 되어 2박3일간 리눅스 커널 & 디바이스 드라이버 교육을 받을 수 있게 되었습니다. 교육장소는 아이오 교육센터 ( 서울시 금천구 가산동 )에 위치하여 있으며, 김정인 강사 (아이오 교육센터 원장, 아임구루 대표이사 love1770@empal.com ) 님께 교육을 받을 수 있었습니다. 아래는 첫째날의 교육내용입니다. 6/22일(화) 실습환경구축, 커널 구조 분석 - 리눅스 커널 개요 - 커널 자료구조 접근 - 커널모드와 유저모드 - 부팅과정 및 초기화 코드 이해 프로세스 관리 - 멀티테스킹 기본 원리 이해 - 프로세스 컨텍스트 스위칭 - Kernel 2.6 O(1) 스케줄링 분석 - 프로세스 생성, 실행, 소멸 과정 이해 PPT 의 경우에는..
얼마전 친한 동생이 웹페이지로부터 특정 정보를 가져오는 소스에 대해서 블로그에 적은적이 있습니다. 간단히 말하면, 네이버에서 극장을 입력하면, 그 극장에서 상영되는 제목과 시간들을 파싱해서 나열하는 코드였는데, 정규표현식 없이 온리 C언어(소켓까지 포함)로 약 300줄 가량 되는것을 확인하였습니다. 그래서 이런 예도 있다는걸 보여줄 겸, perl 로 한번 다시 짜보게 되었습니다. Windows Vim 으로 작업했고 소스는 아래와 같습니다. 총 14줄 :) 파싱이 잘 되는 것을 확인 할 수 있습니다 :) 보여주려고 짜 뒀다가 이제야 포스팅 하네요~ perl 가르쳐달라고 하는 동생의 모습이 눈에 선합니다 ^^;; P.S. C언어로 짜는게 나쁘다는것은 아닙니다. 소켓으로 웹페이지에 접근함으로, 헤더에 어떤값이..
자료를 찾다보니 국내에서는 아직 Hive 파일을 이용하여, 레지스트리를 분석한 논문이나 글이 없더군요. (국내 뿐만 아니라 해외에서도 찾기 어렵습니다ㅡ _ㅠ) 그나마 영어로 된 논문하나를 찾게 되어 이 문서를 보면서 Hive 파일을 분석하는 Tool 을 만들고 있습니다. (이 문서도 완벽하지는 않네요 ^^;) C# 으로 프로토타입으로 작업한 스샷입니다. 완성단계까지 99.9% 남았네요 ^^;; 도움을 주고 계시는 진원이형 고맙습니다. ㅋ
올해 3월 말 부터 5월 초까지 약 한달반 정도 소요된 팀 프로젝트입니다. 영어공부를 하는데 외국 영화나 드라마를 가지고 공부를 많이 하는데 이를 프로그램으로 구현해 보았습니다. 프로그램의 프로토 타입 구현에 대한 알고리즘은 아래 링크되어 있습니다. Extract Image (2) Extract Image (1) Sami Data Grouping (3) Sami Data Grouping (2) Sami Data Grouping (1) SAMI File Parser 위의 글과 같은 방법으로 SAMI 파일을 각각 parsing 하였고, 각 장면별로 나눠주는 알고리즘을 만들어, 상황별 이미지와 스크립트를 나눠주는 모듈을 만들었습니다. 영상에서 스크립트를 추출하여, 영어공부를 할 수 있는 모드를 설정하며, 각 ..
인사이드 윈도우즈 포렌식을 보게 되었습니다. 연구실에 아는 동생을 꼬드겨서 사게 한 후, 몇일간 열심히 보면서 이제야 포스팅을 합니다. 벌써 많은 분들이 포스팅을 하고 평을 써 놓아서 늦은 감이 있지만, 아직 어떤 책인지 잘 모르는 분들을 위해 간단히 적어 보려 합니다. 번역자, 감수자 분들은 보안계에서 인지도가 있으신 분들입니다. 감수자이신 박병익님 같은 경우에는 심플스를 운영하고 있으며, 책이 나오기 얼마전 트위터로 이 책을 소개도 하였죠 :) 책은 전반적으로 포렌식에 관련된 설명과, 분석적인 측면으로 분류 됩니다. 책에서 많은 부분을 다루고 있는건 사실이지만, 실속은 없다고 생각되네요. 결국.. 확실한 원리를 알기 위해서는 스크립트 소스 코드를 까봐야 하는게 현실이기 때문이죠 ^^; 하지만 정말 많..
[삼성전자 소프트웨어멤버십 회원 선발 공고] 삼성소프트웨어멤버십에서 2010년도 하반기 신입회원을 선발 합니다. 1. 모집 요강 □ 모집대상 : IT분야 연구개발에 ‘재능’과 ‘열정’있는 국내 정규 4년제 대학(원)생 □ 해당지역 : 서울, 수원, 대전, 대구, 부산, 광주, 전주 □ 접수방법 : 온라인 접수( www.secmem.org ) □ 모집일정 * 서류접수 : 2010.06.14 ~ 06.28 * 기술면접 : 2010.07.07 ~ 07.09 * 합격자 발표 : 2010년 7월 말 예정 2. 지원 분야 □ 기 술 : Software , Hardware, SoC, Robotics, Etc. □ 컨텐츠 : Mobile Contents, Web, Mobile Widget, Etc. □ UX : Inf..
CPAN 에서 한번씩 모듈을 검색하다 보면 별 5개가 가득 찬 모듈은 보기가 힘듭니다. 그런데 이 모듈은 별 5개를 받아도 모자라다는 느낌이 드네요^^ 지금부터 소개할 모듈은 Acme::EyeDrops 라는 모듈로 예전에 Naver Perl 카페에서 Raymundo님이 한번 언급해 주셨습니다. 얼마전 읽었던 별찍기 에서 perl 스페셜 버전으로도 소개가 되었던 Acme::EyeDrops 저도 궁금해서 한번 사용해 보았는데 아래 예제를 보도록 하겠습니다. Acme::EyeDropsVisual Programming in Perl Acme-EyeDrops-1.55 (2 Reviews) - 01 Dec 2008 - Andrew J. Savige Perl 1 2 3 4 5 6 7 8 9 10 11 12 13 1..
최근에 간단간단하게 짜본 프로그램이 몇가지 있는데 그 중에 하나를 소개합니다. 유사도 측정에관한 논문을 분석 후 값을 한번 짜봤습니다. 관련 URL : http://www.cs.vu.nl/~frankh/postscript/WWW07.pdf 일단 Google Distance 입니다. 단어 두개를 가지고 Google에 검색된 결과값에 따른 Distance 를 구해주는 공식입니다. 저렇게 NGD를 뽑아내는 함수만 잘 만들어 주면 구현하는데 어렵지 않습니다. Client 가 입력하는 50개정도의 단어를 Google 에 Search 를 한 뒤 50개에 대한 f(x) 값과 f(x,y) 값을 추출하여 파일에 저장합니다. 이렇게 50개의 단어를 Word 로 받아 온 뒤 f(x) 는 npc.txt 에 저장하였고 f(x,..