'Computer_language'에 해당되는 글 82건

  1. 2009.03.19 무선랜 장착 노트북을 통해 인터넷 공유(Adhoc, Peer to peer) 설정하기
  2. 2009.03.15 msi 우분투 무선랜 2
  3. 2009.03.13 usb xp 설치
  4. 2009.02.04 10가지 리눅스 사용자에게 꼭 필요한 Cheat-Sheet
  5. 2009.02.04 Thread 내의 usleep 의 문제
  6. 2009.02.03 리버스 엔지니어링 1
  7. 2009.01.27 웹2.0시대 많이 쓰이는 용어들(4)
  8. 2009.01.27 웹2.0시대 많이 쓰이는 용어들(3)
  9. 2009.01.27 웹2.0시대 많이 쓰이는 용어들(2)
  10. 2009.01.27 웹2.0시대 많이 쓰이는 용어들(1)

무선랜 장착 노트북을 통해 인터넷 공유(Adhoc, Peer to peer) 설정하기

|

내 블로그가 어느사이 강한 정치색을 띄고 있었다. 보수성향을 사람들이 보면 좌익 빨갱이라고 할지도 모르겠다.

처음 블로그에 글을 올리기 시작할 때는 이게 아니었는데... 누가 날 이렇게 만들었나 원망스럽기도 하다.

 

오늘은 내 블로그 본연의 목적에 충실한 글을 올려야지...

오래전부터 한번 해보려 맘먹었던 유선 인터넷과 무선랜이 함께 지원되는 노트북에서 인터넷 공유 설정법이다.

 

----- 본 문 -----

 

PC를 조금 사용하는 사람이라면 집에 인터넷 라인이 들어오지 않는 사람을 없을 것이다. 그리고 PC를 두 대 이상 사용하는 매니아(?)도 많다. 두 대 이상의 PC에서 인터넷에 접속하기 위해서 인터넷 공유기를 사용하는 것이 이미 일반화 되어 있고 인터넷 유무선 공유기의 가격도 엄청나게 커진 시장으로 인해 10만원 훨씬 미만으로 하락한 상태다.

 

하지만 이동이 잦은 엔지니어들 특히 두 명 이상 짝을지어 지방출장을 가는 경우에는 공유기를 들고 다니기는 솔직히 부담스럽다. 일부러 인터넷이 되는 숙소를 잡고 혼자 인터넷 서핑을 하는 것은 가능하지만 두 명이 동시에 두대로 인터넷을 하는 것은 생각하지 못하고 있었다.

 

그러던 중 두 명이 함께 출장을 가서 1박을 하는 상황이 발생했고 방으로 들어오는 인터넷 유선라인을 노트북에 연결하고 장착된 무선랜카드를 통해 인터넷 공유설정을 해보기로 마음먹었다.

 

PC에 랜카드 두 개를 설치하고 인터넷을 공유하는 것은 해보았지만 무선랜카드를 통해 공유 설정을 해보는 것은 처음이다 보니 설정이 그리 간단하지는 않았다.

 

지금부터 그 과정을 설명한다.

 

먼저 구성을 보면

 

 

위의 그림에서와 같이 Note1으로 유선인터넷 회선이 연결된다. 집이라면 ADSL, VDSL, 광랜 등의 인터넷 회선이 될 것이다.

 

이때 인터넷 공유기의 역할을 대신할 Note1에는 유선랜카드와 무선랜카드가 모두 장착되어 있다고 가정한다.

 

이러한 환경에서 Note2 Note1의 인터넷을 공유하기 위해서는 Note1으로 유선을 통해 들어온 로컬 연결 영역을 공유 설정해주고 Note1의 무선랜카드의 설정을 Adhoc 이라는 Peer to Peer 방식으로 설정해 주면 된다.

 

이제 이 과정을 살펴보자.

 

먼저 유선을 통해 인터넷이 들어오는 Note1에서 해야 할 설정이다.

<01.JPG>

 

먼저 유선랜 혹은 집으로 들어오는 ADSL, VDSL, 광랜 등 인터넷에 연결된 Note1에서 네트워크 환경을 보면 위의 그림과 같다. 또한 무선 네트워크도 활성화 되어 있어야 한다.

 

이제 아래 그림과 같이 로컬 영역 연결의 공유 설정을 해야한다. 로컬 영역 연결의 속성 창을 열고 고급탭을 선택하고 인터넷 연결 공유에 체크만 해주면 된다.

 

<02.JPG>

 

위와 같이 체크하고 확인 버튼을 누른다.

<03.JPG>

 

정상적으로 공유가 설정되었다면 위의 그림과 같이 로컬 영역 연결공유됨이라고 표시가 된다.

 

다음은 무선 네트워크의 설정이다.

 

먼저 무선 네트워크 연결의 속성창을 열고 다음 화면과 같이 설정한다.

 

<04.JPG>

 

속성 창의 무선 네트워크 탭에서 Windows에서 무선 네트워크 구성을 체크해주고 맨 아래쪽의 고급 버튼을 눌러 표시되는 윈도에서 컴퓨터 간 네트워크만(특별)에 체크를 해준다. Windows에서 무선 네트워크 구성이 활성화 되지 않는 다면 네트워크 설정을 관리하는 별도의 프로그램이 활성화 되어 있기 때문이다. 윈도를 리부팅하고 해당 네트워크 설정프로그램을 종료한 뒤 다시 시도해야 한다.

 

다음은 Access Point 역할을 하기 위한 설정이다.

 

<05.JPG>

 

아래쪽의 추가 버튼을 클릭하고 연결정보 탭에 위와 같이 SSID를 입력한다.

그리고 키가 자동으로 공급됨의 선택을 해제한 뒤 네트워크 키를 입력한다. 이 네트워크 키는 보안을 위한 암호로서 최소 5자리 혹은 13자리 숫자+영문으로 입력해야 한다.

그리고 확인 버튼을 누른다.

 

<06.JPG>

 

SSID 관련 설정이 완료되면 위와 같이 네트워크 목록에 앞 화면에서 입력한 SSID 값이 보인다. 단 아직 연결되지 않은 상태이기 때문에 적색 X 표시가 되어 있어도 정상이다.

 

다음단계는 생성한 SSID Note1을 연결시키는 작업이 이루어져야 한다.

 

Note1에서 사용할 수 있는 무선 네트워크를 보면 다음과 같이 노트북의 무선 랜카드에 부여된 SSID를 확인할 수 있다.

 

<07.JPG>

 

해당 SSID를 선택하고 연결버튼을 클릭한다.

 

<08.JPG>

 

앞의 화면과 같이 네트워크 키를 입력하라는 창이 보이게 된다. 앞에서 설정한 네트워크 키 5자리 혹은 13자리를 입력하고 연결 버튼을 누른다.

 

<09.JPG>

 

입력한 네트워크 키가 올바르다면 위와 같이 연결됨 이라는 표시가 된다.

 

 

<10.JPG>

그리고 나서 "무선 네트워크 연결의 속성에 들어가면 앞의 그림과 같이 적색 X 표시가 있던 무선네트워크 SSID에 적색 X 표시가 사라졌음을 알 수 있다.

 

이제 마지막으로 해야 하는 설정은 Note1의 무선 네트워크 연결의 IP를 설정해주는 부분이다.

 

아래 화면과 같이 고정IP를 지정해 주면 된다.

 

<그림 11.JPG>

 

 

이제 인터넷을 공유할 Note1의 설정은 모두 완료되었다.

 

완료된 뒤 Note1 IP 설정은 다음과 같이 확인할 수 있다. 명령창에서 ipconfig를 실행한 화면이다.

 

<
그림 12.JPG>

 

유선으로 인터넷에 연결된 로컬 영역 연결에는 게이트웨이가 설정되어 있는 것을 볼 수 있다. 위의 화면은 광랜으로 들어오는 인터넷회선이 유무선 공유기에 연결되어 있고 Note1이 랜으로 공유기에 연결되어 Note1이 사설IP를 사용하는 경우이다.

 

만약 인터넷 회선이 광랜, ADSL, VDSL등으로 Note1에 직접 연결된다면 공인IP가 부여될 것이다.

 

다음부터는 Note1을 통해 인터넷을 사용하게 될 Note2의 설정이다. Note1 보다는 훨씬 간단하게 설정이 된다.

 

Note2에서는 무선 랜카드(무선 네트워크 연결) IP Note1의 무선 연결의 IP 대역으로 맞추어주는 것으로 작업은 끝난다.

<
그림 51.JPG>

 

위의 화면과 같이 무선 네트워크 연결의 속성 창을 열고 TCP/IP IP Note1의 대역으로 맞춘다. 여기서 기본 게이트웨이를 Note1 IP로 맞추어야 한다는 것에 유의하자. 또한 IP 주소는 Note1의 무선의 IP 주소와 달라야 한다.

 

설정이 완료되면 이제 Note2에서 무선 Access Point를 검색해보자.

<
그림 52.JPG>

 

Note2에서 앞의 화면처럼 사용할 수 있는 무선 네트워크 보기를 선택하면 다음 화면과 같이 Note1의 무선 네트워크 연결에서 설정한 SSID가 보인다.

<그림 53.JPG>

 

여기에서 Note1 SSID가 오랫동안 보이지 않고 어느정도 시간이 흘러야 한다고 하는 인터넷의 자료들이 많았지만 그 이유는 Note1의 무선랜 설정 중 설정을 완료하고 Note1에서 해당 SSID에 연결을 하지 않았기 때문이 아닌가 생각된다. 나도 처음엔 너무 오랫동안 Note1 SSID가 잡히지 않아서 고민했었지만 Note1에서 해당 SSID를 찾아 연결을 하고나니 Note2에서 바로 Note1에서 설정한 SSID가 검색되었다.

 

이제 연결만 하면 된다. 다음 화면과 같이 해당 SSID를 선택하고 연결 버튼을 누르자.

<
그림 54.JPG>

 

연결 버튼을 클릭하면 네트워크 키를 물어본다.

여기에는 Note1의 무선 네트워크 설정 시 입력한 네트워크 키를 동일하게 넣어주면 된다.

틀리면??? 당연히 연결이 안된다.

 

<그림 55.JPG>

 

Note1의 무선 SSID에 잘 연결된 화면이다. 이제 Note1과 Note2 두대의 PC을 이용해 인터넷 공유기 혹은 AP 없이 웹서핑을 즐기는 일만 남았다.

 

두명이상이 동행하는 출장길에서 유용하게 사용할 수 있는 노트북의 무선 랜카드를 통한 인터넷 공유 설정법이다.


'Computer_language > Computer_care' 카테고리의 다른 글

msi 우분투 무선랜  (2) 2009.03.15
usb xp 설치  (0) 2009.03.13
웹2.0시대 많이 쓰이는 용어들(4)  (0) 2009.01.27
웹2.0시대 많이 쓰이는 용어들(3)  (0) 2009.01.27
웹2.0시대 많이 쓰이는 용어들(2)  (0) 2009.01.27
And

msi 우분투 무선랜

|

넷북인 NC10이나 제 동생이 사용 중인 MSI 노트북.. 및 atheros 5xxx 시리즈를 가지고 계신 분이 많을 줄로 압니다. 저 역시 넷북인 NC10에 atheros ar5007eg가 붙어있어서 삽질 좀 ㅎㅎ

8.10부터는 백포트 모듈에서 바로 무선랜을 잡을 수 있는데;; 문제는 이걸로 무선랜을 잡고 트랜스미션이나 델루즈로 토렌트 파일을 받으면 접속자 수 때문에 연결이 끊겼다가 다시 접속 됐다가;; 맘대로;;

그리고 ndis+gtk 인 wrapper로 잡으면 윈도 드라이버로 쉽게 잡을 수 있지만, 종료가 제대로 되지 않는 단점이 생깁니다 --;;

그래서 올립니다. 아래에 설명이 나가겠지만, 저 곳엔 매일 매일 파일이 갱신됩니다. 하지만, 맨날 그 내용이 변하지는 않습니다.
한가지 버그가 있습니다. 그건;; 무조건 무선 수신율이 100%로 나온다는거 ㅎㅎ 기분 좋은 버그 인가요?

그럼 이제 아래와 같이 해보세요~~

====================================================================================

우선 여기서 파일을 다운 받습니다. 아무거나 받으셔도 됩니다.


그리고 터미널을 열고 아래를 한 줄 씩 복사해서 붙여넣기 하세요~

tar -jxf compat-wireless*.bz2
cd compat-wireless*
sudo make install
sudo make unload
sudo make load


참 쉽죠? 도움이 됐다면 추천~ ㅋ

 

출처 : http://hitme.kr/entry/a5k-in-ubuntu?category=2

And

usb xp 설치

|



지난 시간에는 USB로 DOS 부팅 USB 만들기를 해봤습니다.

ODD가 없고 Ghost 이런걸 쓸려면 꼭 필요한 것들이죠.

이번에는 S5에 설치된 XP Home Edition 대신에 XP Professional Edition을 설치할려고 합니다.

만약에 외장 ODD (CD/DVD) & USB 허브 & 설치 CD가 있다면 그냥 연결해서 설치하시면 되지만...

만약에 S5에 연결한 외장 ODD가 없다면....어떻게 할까요?

방법이 있습니다...USB에 OS 설치 영역을 심어주시면 됩니다.

그럼 지금부터 하나씩 알아보도록 하겠습니다.

 

먼저 첨부파일에서 3가지 파일을 다운 받으신 후에 아무 폴더에 압축해제 합니다.

 

 

 

그런 후에 petousb의 폴더에 있는 PeToUSB.exe 파일을 usb_prep8 폴더로 복사해서 붙여 넣습니다.

 

 

다음 usb_prep8.cmd 화일을 실행합니다. (그냥 더블 클릭~~)

 

 

DOS창이 뜨고 아무키나 입력하게 되면....

아래와 같이 해당 USB의 포멧을 시작합니다.

(반드시 USB 안의 자료들은 백업해 두시길.....)

 

 

Start를 시작하면 포멧을 시작하고 끝난후에 확인을 클릭하면 DOS 창 화면이 바뀝니다.

 

 

 

여기서 중요한건...이창은 절대로 끄면 안됩니다.

이 창에서 중요한건 1번/3번입니다. (4번은 그냥 실행)

순서상 1-3-4로 가면 되는데....4번 전에 해야할 일이 부팅 섹터를 만들어줘야합니다.

1-3번 작업  후에 하셔도 되고...먼저 하셔도 됩니다.

 

저는 1번/3번부터 먼저 했습니다.

 

1번을 선택하면 아래와 같이 XP Setup Source가 들어있는 드라이브를 선택하시면 됩니다.

 

 

2번은 USB로 넘기기 전에 가상 드라이브로 복사하는 것인데..

따로 선택하지 않으셔도 됩니다.

3번을 입력하면 현재 USB가 들어있는 Drive를 선택하라고 합니다.

저는 USB가 I: 드라이브에 있어서 I를 넣어줬습니다.

 

 

여기서 4번을 누르면 안됩니다.

부팅섹터를 넣지 않았으니깐요...^^;;

이창은 그대로 둔 상태에서 시작-실행-cmd를 눌러 줍니다.

 

 

 

아래와 같은 DOS 창이 뜨고...

방금 전에 압축 해제한 bootsect 디렉토디로 들어갑니다.

간단한 DOS 명령어는....

cd XX - XX라는 하위 디렉토리로 이동을 쓰시면 됩니다. (cd bootsect - bootsect 라는 디렉토리로 이동)

cd .. - 바로 상위 디렉토리로 이동하는 명령어

이정도는 아실듯...^^;

이동 하신 후 bootsect.exe /nt52 I: 를 입력합니다.

(이 때 I는 USB Drive로 위에서 와 같습니다.)

 

 

 

성공하면 아래와 같이 메세지가 출력 됩니다.

 

 

 

그럼 이 DOS 창은 닫고..

이전에 두었던 usb_prep8.cmd 창으로 돌아갑니다.

그리고 4번을 눌러줍니다.

 

 

 

이후로는...여러가지 말들이 나오는데..

그냥 y나 아무키를 눌러주시면 됩니다.

 

 

지루한 복사가 끝나고...

USB로 부팅+XP 설치 이미지를 심는데...꽤나 오랜  시간이 걸립니다.

컴이 떨어지거나 USB 속도가 느리면 더욱더요~~

우째든 추후에 나오는 메세지는 Yes 하시면 됩니다.

 

 

 

 

완전히 설치가 끝나면 DOS 창을 닫고...

USB를 열어보면....아래와 같이 부팅+XP 설치 USB가 만들어 졌습니다.

 

 

 

 

제 경우는 Wi-Fi 랜이 안잡히더군요.

디스크 있음으로 해도 마찬가지....ㅋ

아무래도 설치중에 이상이나....양산용 보드가 아니라서 생기는 문제일 수 있을듯 합니다.

우째든 중요한건 XP 설치용 USB를 만드는 작업이니...^^;; 


And

10가지 리눅스 사용자에게 꼭 필요한 Cheat-Sheet

|
http://alinuxblog.wordpress.com/2008/08/23/10-must-have-linux-not-only-cheat-sheet/

Quick Reference 카드가 필요한가? 여기서 선택해보자

1.Linux Command Line Tips

리눅스에서 일반적인 명령을 내릴때 참고할만한 "linux command line reference"(HTML Format)


2.Unix/Linux Reference Card

Unix/Linux Command Reference Card. (PDF format)

3.One Page LInux Manual

유용한 linux command 요약 (PDF format)

4.Linux Security Quick Reference

이 Quick Reference Guide는 당신의 시스템의 보안 향상을 위해서 A-Z까지 나와있다. (PDF format)

5.Screen VT100/ANSI Terminal Emulator Cheat Sheet

이 cheat-sheet는 screen command에 대한 모든 기본적인 keboard mapping에 대해서 정리되어있다. (PDF format)

 

6.Vi/VIM Graphical Cheat-Sheet

이 문서는 vi/vim 입력 모델, 모든 기능의 키들, 모든 중요한 요소를 하나의 페이씩 구성되어있다. 마치 압축된 vi/vim 메뉴얼과 같이 느껴진다.(GIF format)

 

Lesson 1 (hi)
Lesson 2 (hi)
Lesson 3 (hi)
Lesson 4 (hi)
Lesson 5 (hi)
Lesson 6 (hi)
Lesson 7 (hi)
Zip with all GIFs
Zip with all SVGs

7.Firefox Keyboard and Mouse Shortcuts

FireFox의 키보드와 마우스 단축키가 OS마다 정리되어있다. (HTML format)

8.Gimp Reference Card

Designed for Gimp version 1.2.2. (PDF format)

9.Debian Reference Card

The 101 most important things when using Debian GNU/Linux (last revision 2005-09-03). (PDF format)

10.Google Cheat Sheet

두 페이지로 구성된 Google Cheat Sheet 는 모든 Google Service와 Tool들을 배경설명과 함께 나열하고 있다. Google검색 쿼리의 구조와 기초부터 완성까지 정리된 훌륭한 참고자료이다. (PDF format)

 

 

다른 유용한 Cheat-sheet들 ( Peteris  great site ):  www.catonmat.net

See also:  www.cheat-sheet.org and www.techcheatsheets.com


And

Thread 내의 usleep 의 문제

|

이번에 OpenSUSE 11.0 으로 업그레이드하면서 이상한 현상이 발생하였습니다.

10.3에서 잘돌던 프로그램이 11.0으로 오면서 CPU 가 150% 이상 점유하는 문제였습니다.

그래서 결국에 문제를 찾기위해서 프로그램을 디버그해보았습니다.

 

문제가 생긴 부분은 thread에서 cpu점유를 막기위해서 사용한 usleep의 문제였습니다.

 

usleep(10)이라 해서 10us 만 쉬도록 되어있던 코드가 문제였습니다.

 

일단 thread내에서 cpu 점유율을 낮추기 위해서 10us를 쉬도록 한것 자체가 성립되지 않는 문제입니다.

그 이유는 man usleep 을 해보면 자세히 나와있고 sleep에 얽힌 이야기들 이란 글에 잘 나와있습니다.

 

 대부분의 UNIX OS(특히 Linux) kernel timer는 1/HZ정도로 맞추어져있으며, 
   
한 thread내에서 sleep등으로 context switching이 일어날 경우 다른 thread를 

수행하고 다시 현재의 thread로 돌아오는 시간은 최소 > 10ms가 

되며, 이것은 Intel Platform에서 지원하는 timer 주기와 맞물린다고 한다.

(이에 대해선 linux의 jiffies설정과 기타 문서 참조.)

따라서 실제로 thread내에서 usleep이든, nanosleep이든 sleep할 수 있는 최소의

시간은 >1/HZ(10ms intel)가 되어야하며, 이것은 1/100초 즉, 10msec라고 할 수 있다.

실제 sleep할 수 있는 시간은 10msec가 아닌 60msec정도가 한계인 경우(irix,solaris 

혹은 linux)도 있다.  이것은 또한 사용자 레벨에서 줄 수 있는 최소의 sleep time이라 

볼 수 있다.

 

usleep의 숫자를 늘린 뒤에는 (10ms이상으로) CPU 점유율이 정상적으로 돌아왔습니다.

 

glibc 소스를 받아서 10.3과 11.0의 usleep의 구현을 봐도 동일합니다.

(usleep 구현이 내부적으로 nanosleep을 호출하도록 되어있더군요. 구현이 틀리다는 내용도 있었는데 실제 보니.같았습니다.)

KLDP의 글에서 살짝이나마 예상을 할수 있었습니다.

 

usleep는 deprecated된 함수이고,

일반적으로 nanosleep을 사용하라고 권고하고 있습니다.

내부적으로 usleep은 select()함수를 이용하여 구현되었었다고

알고 있고, select를 직접 쓰시는 것과 큰 차이가 없습니다.

그리고, 한 쓰레드가 usleep을 한다고 해서 다른 쓰레드가 모두

정지하는 것이 아니고, 쓰레드의 스케쥴링 스코프가 SYSTEM

(BOUND Thread)일 경우에는 전혀 상관이 없습니다.

물론 PROCESS 스코프일 경우에도 SUN의 경우는 LWP Level을

자동으로 올려 그런 경우가 없도록 구현해 놓았습니다.

그리고, usleep이 Thread unsafe하다는 이야기는 처음 듣는

것이고, Thread unsafe한 함수의 경우 해당 플랫폼의

매뉴얼이나 Thread 프로그래밍 문서에 잘 나와있습니다.

(Signal Unsafe한 경우도 고려해야 합니다.)

nanosleep의 경우 사실상 CPU를 적게쓰기 위해 호출하는

것은 적절하지 않다는 생각이 듭니다.

문맥교환의 기본 시간단위가 mili second인데 nano second

단위로 Sleep을 하려면 CPU를 소모하면서 busy wait을

한 이후에 깨어나는 수 밖에는 없어서 그렇습니다.

개인적으로 테스트해 본 결과, select()보다 nanosleep()의 경우

CPU를 때때로 더 많이 사용하는 경우를 맞닥드린 경우도

있습니다. (물론 개인적인 테스트이기 때문에 편차가 있을 것으로

생각합니다만)

만일 CPU 점유율을 낮추기 위해 sleep을 하시려면

제가 보기에는 select() 관련 함수가 가장 적합해 보입니다.

좋은 결과 있기 바랍니다.

 

좀 오래된 글이라 (2003년) 안 맞는 이야기가있긴합니다.(usleep은 deprecated되었다 라던지. usleep구현이 틀리다. 현재 glibc 소스를 보면 usleep내부적으로 nanosleep로 되어있습니다.)

위의 내용에서 u sec의 수준으로 sleep을 하는 경우에 CPU를 소모하면서 busy wait를 한다고 되어있습니다.

아마 이게 주 원인이 아닐까 싶습니다.

 

결론적으로 thread내의 usleep의 10ms 이하의 sleep은 의미가 없고 OpenSUSE 11.0에서는 더 많은 cpu를 사용하는

문제가 생깁니다.

 

ps: 아직까지 11.0의 무엇이 이 원인을 생기게 했는지는 모르겠습니다. 누구 아시는 분은 좀 알려주세요.

 

 

추가의 글..

 

nanosleep의 manual을 보면 최소의 resolution은 1HZ라고 되어있습니다.

 BUGS
       The current implementation of nanosleep() is based on the normal kernel timer mechanism, which has a resolution of 1/HZ s (see time(7)).  Therefore, nanosleep() pauses always for  at  least  the
       specified  time, however it can take up to 10 ms longer than specified until the process becomes runnable again.
  For the same reason, the value returned in case of a delivered signal in *rem is
       usually rounded to the next larger multiple of 1/HZ s.

   Old behavior
       In order to support applications requiring much more precise pauses (e.g., in order to control some time-critical hardware), nanosleep() would handle pauses of up to 2 ms by  busy  waiting  with
       microsecond  precision  when called from a process scheduled under a real-time policy like SCHED_FIFO or SCHED_RR.  This special extension was removed in kernel 2.5.39, hence is still present in
       current 2.4 kernels, but not in 2.6 kernels.

       In Linux 2.4, if nanosleep() is stopped by a signal (e.g., SIGTSTP), then the call fails with the error EINTR after the process is resumed by a SIGCONT signal.  If  the  system  call  is  subse-
       quently restarted, then the time that the process spent in the stopped state is not counted against the sleep interval.

 

 

man 7 time을 해보면 다음과 같은 글이 있습니다.

  The Software Clock, HZ, and Jiffies
       The accuracy of many system calls and timestamps is limited by the resolution of the software clock, a clock maintained by the kernel which measures time in jiffies.  The  size  of  a  jiffy  is
       determined  by  the  value  of the kernel constant HZ.  The value of HZ varies across kernel versions and hardware platforms.  On i386 the situation is as follows: on kernels up to and including
       2.4.x, HZ was 100, giving a jiffy value of 0.01 seconds; starting with 2.6.0, HZ was raised to 1000, giving a jiffy of 0.001 seconds; since kernel 2.6.13, the HZ value is a kernel  configuration
       parameter and can be 100, 250 (the default) or 1000, yielding a jiffies value of, respectively, 0.01, 0.004, or 0.001 seconds.  Since kernel 2.6.20, a further frequency is available: 300, a num-
       ber that divides evenly for the common video frame rates (PAL, 25 HZ; NTSC, 30 HZ).

 

위의 글들이 좀 오래된것이라 2001년 2003년.. 현재 상황과는 안 맞는 부분이 있습니다.

 

 

테스트 하나)

OpenSUSE 11.0과 OenSUSE 10.3에서 usleep(1)을 했을때 얼마 정도 지나야 깨어나는지 테스트해보았습니다.

 #include <unistd.h>
#include <sys/time.h>
#include <stdio.h>

int main()
{
        struct timeval tv;

        gettimeofday(&tv,NULL);
        printf("%d %d\n", tv.tv_sec, tv.tv_usec);
        for(int i=0; i<10; i++)
        {
                usleep(1);
        }
        gettimeofday(&tv,NULL);
        printf("%d %d\n", tv.tv_sec, tv.tv_usec);
}

 

OpenSUSE 10.3 (평균 7382us)
1215153330 337156
1215153330 415476

 

OpenSUSE 11.0(평균 9.4us)

1215153341 235090
1215153341 235184

보면 usleep의 resolution이 11.0이 상당히 높음을 알수 있습니다.

결국 OpenSUSE 11.0에서 usleep 을 사용하여 thread를 쉬게 한뒤에 넘겼을 경우에 빠른 시간내에 제어권을 가지고 오기 위해

CPU를 사용했다는것을 알수 있습니다.

 


And

리버스 엔지니어링

|

[컴][해킹] Reverse Engineering - 1

Reverse engineering (역공학) 에 유용한 tools - utils
IDA-pro
OllyDbg
참고로 OllyDbg 는 mfc에 대한 comment 는 지원하지 않는다는데,
가능한 방법이 위에 출처에 있다.
그리고 IDA-pro 의 free version 에 대한 글도 있다.
그리고 PE file의 분석을 위한 tool은
Visual studio 를 깔면 있는
DumpBin
그리고
PEBrowse professional interactive - freeware

이 있다.

2008-06-06
참고로 java 의 reverse engineering tool 이 필요해서 잠깐 써먹었는데, 괜찮네~
http://steike.com/code/java-reverse-engineering/
여기 가면 download를 받을 수 있다.
혹시나 해서 여기에도 올려놔 본다. (jad.exe)

jad.exe

'Computer_language > Debug' 카테고리의 다른 글

The Network Simulator ns-2: Debugging Tips  (0) 2009.01.18
Debugging with DDD  (1) 2009.01.12
[ns] Helpful Info regarding GDB / DDD and NS2  (0) 2009.01.12
gdb 사용법  (0) 2009.01.12
[ns] re:how to debug TCL  (0) 2009.01.12
And

웹2.0시대 많이 쓰이는 용어들(4)

|
퍼머링크(permalink) - 영구적인 링크(permanent link)의 약자. 개별적인 블로그에 올라간 글에 대하여 고유한 URL이 할당됨.

페이지랭크(PageRank) - 웹사이트 인기를 측정하는 구글의 알고리즘에 의해서 결정되는 웹 페이지 검색 결과. 순위를 매기는 공식은 비밀이지만, 페이지 제목, 키워드, 페이지에 링크하는 다른 사이트의 수 등의 요인이 포함됨.

페이지뷰(page view) - 한 HTML 페이지를 여는 요청. 페이지뷰로 표현되는 웹사이트의 트래픽은 온라인에서 인기를 측정하는 데 널리 이용됨.

포드세이프(PodSafe) - 보통은 수수료 없이 합법적으로 팟캐스트에서 사용되는 것이 가능한 콘텐츠를 지칭하는 등록상표화된 용어.

포도스피어(podosphere) - 팟캐스트를 사용하고 만드는 사람들의 커뮤니티.

팟캐스트(podcast) - 인터넷에서 스트림 방식으로 제공되거나 휴대용 기기에 다운로드할 수 있는 디지털 오디오 및 동영상 프로그래밍. 팟캐스트는 RSS라는 구독형 매커니즘(subscription mechanism)을 사용하여 RSS를 등록한 사람에게 콘텐츠를 제공한다는 점에서 스트림 방식으로 제공되는 오디오나 동영상과 다름.

포스트(Post) - 동사로 사용하면 온라인 콘텐츠를 발행(글을 올리는 등의)하는 행위를 가리키고, 명사로 사용하면 단일한 온라인 콘텐츠 항목을 가리킴.

피드(feed) - 웹 콘텐츠를 모아놓기 위한 밀어내기 방식의 기술. 사용자들은 직접 프로그램을 통해서 피드에 등록하고, 이 프로그램은 정기적으로 사용자가 등록한 피드 목록에 있는 모든 서버에 대하여 폴링(신호 스위치 장치로 단말기에 전송하는 기술)을 해서 새로운 콘텐츠를 다운로드함.

하이퍼링크(hyperlink) - 클릭하면 웹 페이지의 다른 부분으로 가게 되거나, 아니면 완전히 새로운 웹 페이지로 이동하는 아이콘이나 이미지, 텍스트 등을 가리킴. 대부분의 하이퍼링크는 웹 페이지에서 밑줄이 그어져 있거나, 밑줄과 색깔이 함께 표시됨.

호스팅 사이트(hosting site) - 다른 웹사이트에 대해 파일을 보관하고 유지, 관리 해주는 본거지 웹사이트. 구글에서 운영하는 '블로거'나 '워드프레스' 등의 사이트가 유명함.

A급 리스트(A-list) - 영향력 있는 블로거를 가리키는 전문용어. 일반적으로 'A급 블로거'라고 함.

CC(Creative Commons) - 대안적 저작권의 틀을 발전시키기 위한 비영리 조직. CC는 상업적 목적에 의해서 재사용하는 것이 아니라면, 다른 사람과 공유하고, 또 그것을 기반으로 다른 것을 만들어낼 수 있는 창조적 작업물의 범위를 넓히려고 노력하고 있음.

MP3 플레이어 - 휴대가 가능한 디지털 오디오 기기로, 오디오 파일을 저장하고 정리하며 구동할 수 있음.

RSS - Rich Site Summary(풍부한 사이트 요약), 또는 Really Simple Syndication(아주 단순한 자료 취합)의 약자.
RSS는 콘텐츠 발행과 이에 대한 등록이 이루어져서 등록한 사람에게 정보가 자동으로 전달되는 메커니즘.

XML - 확장 가능한 마크업 언어(Extensible Markup Language)의 약자. XML은 공통의 정보 형식을 만들어내는 유연한 방법이며, 월드와이드웹이나 인트라넷 등의 장소에서 형식(format)과 데이터를 함께 공유하게 해줌.


글쓴이 권대리 http://kkd4139.tistory.com/ 주인장 허락 하에 가져온 글입니다.
내용 변경 금지, 퍼가실땐 권대리님에 대한 저작권 표시 부탁드립니다.

'Computer_language > Computer_care' 카테고리의 다른 글

msi 우분투 무선랜  (2) 2009.03.15
usb xp 설치  (0) 2009.03.13
웹2.0시대 많이 쓰이는 용어들(3)  (0) 2009.01.27
웹2.0시대 많이 쓰이는 용어들(2)  (0) 2009.01.27
웹2.0시대 많이 쓰이는 용어들(1)  (0) 2009.01.27
And

웹2.0시대 많이 쓰이는 용어들(3)

|
웹2.0 - 사용자들이 활동적으로 웹 콘텐츠를 창조하고 배포하는 데 참여하는 인터넷 기술과 응용 소프트웨어. 블로그, 위키, 팟캐스트, 비디오 캐스트, RSS, 소셜 북마킹(Social bookmarking) 등이 포함됨.

위키(wiki) - 사용자들이 웹사이트의 콘텐츠를 만들 때 협력하게 해주는 서버 프로그램. 위키에서는 어떠한 권한을 부여받은 사용자가 정규 웹브라우저를 이용해서 사이트의 콘텐츠를 편집할 수 있으며, 다른 사용자의 콘텐츠 역시 편집할 수 있음.

위키피디아(Wikipedia) - 자유롭고 개방적인 온라인 백과사전. 커뮤니티 사용자들이 협력해서 만들어나감.

유즈넷(Usenet) - 유저 네트워크(user network)의 준말, 혹은 전자 게시판 모음. 이러한 분산형 토론 네트워크는 주제별로 계층적 형태로 분류됨. 각 주제는 뉴스 그룹으로 알려져 있으며, 뉴스 그룹에 올라간 메시지는 보통 이메일로 그룹내의 다른 회원들에게 배송됨.

유투브(YouTube) - 동영상 공유 사이트. 사용자가 생성한 콘텐츠에 대한 성공담으로 자주 언급됨. 2006년 10월, 구글에 매각되었음.

이동 블로그(moblog) - PDA나 휴대전화 등과 같은 모바일 기기에 의하여 운영되는 블로그. 이론적으로 어떤 블로그든지 이동 블로그가 될 수 있음.

임원 블로그(executive blog) - 기업이나 조직에서 고위직 임원이 글을 올리는 블로그.

전자책(eBook) - 전자적인 책을 줄여서 부르는 말. 전자책은 데스크톱 컴퓨터, 포켓PC, 전자책 판독기, 인터넷이 가능한 휴대전화, PDA, 노트북 등에서 다운로드나 읽기가 가능함.

주제 블로그(topical blog) - 매우 좁은 범위의 주제에 대해서만 글을 올리는 식으로 운영되는 특정 분야 전문 블로그.

주류 미디어(mainstream media) - 주요 인쇄 및 방송 매체를 가리키는 광의의 개념.

카테고리(category) - 블로그 소프트웨어에서 블로거들에게 올리는 글을 주제별로 모을 수 있게 해주는 기능. 카테고리는 태그나 엘러멘트(element) 등과 같은 짧은 설명으로 이름표를 붙일 수 있음.

클릭(click) - 배너나 문자 광고에 클릭하는 행동. 클릭은 동영상을 구동하거나, 협찬한 사람의 사이트에 방문자를 보냄.

태그(tag) - 온라인 콘텐츠에 대하여 사용자가 할당할 수 있는 핵심 주제어 라벨. 카테고리 분류나 정보 검색 등에 사용되며, 사람들이 관련 콘텐츠를 찾는 데 도움을 줌.

태그 클라우드(tag cloud) - 해당 콘텐츠의 태그로 결정되는, 웹사이트나 블로그의 콘텐츠에 대한 시각적인 표현. 자주 사용된 태그는 다른 태그보다 크게 나타나는 식으로, 방문객으로 하여금 글쓴이가 어떤 주제를 다루는지 알기 쉽게 해줌.

테크노라티(Technorati.com) - 유명한 블로그 검색엔진.

투명성(transparency) - 블로고스피어의 용어로, 개인의 믿음, 동기, 관행 등에 대한 정직하고 올바른 태도.

트랙백(trackback) - 다른 블로거가 내 콘텐츠에 링크를 걸었을 때 이를 알 수 있게 해주는 인터넷 프로그램 프로토콜. 이 프로토콜을 지원하는 소프트웨어는 각 포스트의 끝에 트랙백 URL을 표시함.

글쓴이 권대리 http://kkd4139.tistory.com/ 주인장 허락 하에 가져온 글입니다.
내용 변경 금지, 퍼가실땐 권대리님에 대한 저작권 표시 부탁드립니다.
And

웹2.0시대 많이 쓰이는 용어들(2)

|
블로거(blogger) - (1)블로그에 글을 쓰거나 이것을 운영하는 사람. (2) 구글의 무료 블로그 호스팅 서비스.

블로고스피어(blogosphere) - 온라인상의 블로거 공동체, 또는 그들이 올려놓은 콘텐츠.

블로그(Blog) - 웹로그(Weblog)의 줄임말. 일반 대중이 사용하기 위한 목적으로 만들어진, 자주 갱신되는 온라인 미디어. 블로그는 형식에 따라 정의되는데, 하나의 웹사이트에 시간의 역순으로 올라가는 콘텐츠임.

블로그 운집 현상(blogswarm) - 수천 명의 블로거가 똑같은 이야기나 소식에 대하여 보통은 강한 의견을 가지고 글을 올리는 현상. 블로그 운집 현상은 블로고스피어나 주류 미디어 모두에서 그날의 화제가 될 수 있음.

블로그펄스(BlogPulse) - 닐센 버즈매트릭스라는 회사가 운영하는 블로그 검색 엔진. 블로그펄스는 트렌드 분석과 데이터 추출 도구로 유명함.

브이로그(vlog) - 비디오 블로그의 약자로, 동영상 콘텐츠로 구성된 블로그, 또는 동영상과 텍스트가 함께 올라오는 블로그.

서버(server) - 클라이언트 프로그램에서의 요청을 기다리고 이것을 실행하는 프로그램. 웹브라우저는 단순한 클라이언트로 웹 서버에서 HTML 파일을 요청함.

소비자 생성 미디어(consumer-generated media) - '사용자 생성 미디어(user-generated media)' 로도 불림. 블로그, 메시지 보드, 토론 게시판(discussion board), 후기 사이트(review site)에 올라온 콘텐츠를 지칭하는 광범위한 용어로서 글과 사진, 음성 녹음, 동영상 대화 등을 포함.

쇼 노트(show note) - 온라인상의 팟캐스트나 비디오 캐스트의 이야기에 대한 텍스트로 구성된 요약. 저장된 정보에 대한 문서나 추가적인 정보를 제공한다. 이것은 콘텐츠의 특정한 부분을 빨리 감기로 넘어갈 수 있도록 소요 시간 관련 데이터를 포함함.

스나키(snarky) - 20세기 초반 영국에서 사용되던 '괴롭히다', '헐뜯다' 등의 의미를 나타내는 속어로서, 블로고스피어에서 냉소적이거나 신랄하다는 의미의 형용사로 사용됨.

시간 이동 미디어(time-shifted media) - 사용자의 편의에 따라서 다운로드되기도 하고 개인 미디어에 저장되기도 하는 오디오 및 동영상 콘텐츠.

시민 언론인(citizen journalist) - 주로 블로그나 커뮤니티 웹사이트를 이용해서 글을 올리는 아마추어 언론인.

아이팟(iPod) - 애플 컴퓨터에서 나온, 데이터 저장과 미디어 플레이가 가능한 전자제품.

알렉사닷컴(Alexa.com) - 아마존의 웹사이트 인기도 검색엔진. 사용자는 해당 사이트의 트래픽 유형이나 인바운드 링크(inbound link)로 그 경쟁자를 알 수 있음.

애드센스(AdSense) - 구글의 온라인 광고 프로그램으로, 내용상 연관이 있는 광고를 웹사이트에 올려놓고 클릭 수나 그 광고에 대한 인지를 기반으로 광고비를 지불함. 많은 블로거가 이것으로 블로그에서 수입을 올림.

여론 블로그(Advocacy blog) - 운영자의 목적이 일정한 관점을 전개하거나 대중의 의견에 영향을 미치는 데 있는 블로그. 명분이 있기 때문에 파트너십 프로그램이나 후원회, 메시지 전달형 광고, 직접적인 기부 등 일정한 명분을 위한 모금에 자주 이용됨.

워드프레스(Wordpress) - GNU 제너럴 퍼블릭 라이센스(General Public License) 아래 배포되는, 오픈 소스 기반의 발행 및 호스팅 블로그 사이트.


글쓴이 권대리 http://kkd4139.tistory.com/ 주인장 허락 하에 가져온 글입니다.
내용 변경 금지, 퍼가실땐 권대리님에 대한 저작권 표시 부탁드립니다.
And

웹2.0시대 많이 쓰이는 용어들(1)

|
그룹 블로그(group blog) - 한 사람 이상 정기적으로 기고하는 사람이 있는 블로그

기업 블로그(company blog) - 기업의 소식이나, 특정 이슈에  대해 글을 올리기 위해서 기업이 운영하는 유형의 블로그. 글을 올리는 사람이 여러 명인 경우가 보통이고, 이들은 대부분 기업에서 고용한 직원임.

대역폭(bandwidth) - DTR(Data Transfer Rate : 데이터 전송률) 용어로, 한 곳에서 다른 곳으로 주어진 시간 내에 이동될 수 있는 데이터의 양.

대화(conversation) - (1) 소셜 미디어라는 환경에서 블로그에 의해 지원되는 쌍방향 의사소통을 비롯한 개인적인 퍼블리싱(publishing) 도구들을 가리킴. (2) 마케팅에서 메시지의 진화나 고객과의 토론으로 이어지는 판촉 활동.

댓글(comment) - 블로그를 할 때 블로거의 글에 공개적으로 답할 수 있도록 하는 기능. 댓글은 자동적으로 올라가게 할 수도 있고, 사람이나 컴퓨터 프로그램으로 걸러질 수도 있음.

댓글 스팸(comment spam) - 블로그 댓글 창에 로봇 프로그램('bot'이라고 불림)으로 제품을 홍보하거나, 특정 웹사이트의 검색 순위를 올리기 위해 올린 메시지나 링크.

딕닷컴(Digg.com) - 사용자가 온라인 콘텐츠를 내놓을 수도 있고, 이것에 대해서 투표도 할 수 있는 사이트. 이들은 스스로를 '소셜 뉴스 사이트'라고 지칭함. 웹페이지 인기가 많을수록, 사이트에서 그 위치가 더욱 눈에 띄게 됨.

딜리셔스(Deli.cio.us) - 웹사이트에 북마크를 다는 사람들의 사이트로서, 회원들이 좋아하는 웹페이지를 저장하고, 카테고리로 묶고 지정하여 공유할 수 있도록 지원.

롱테일(long tail) - 대부분 Y축으로 몰리는 식으로 빈도가 분산되며, X축 주변으로 점점 더 줄어드는 분산을 보여주는 빈도 분산의 유형임. 이 용어는 <와이어드>에서 많은 사람이 소량의 제품에서 상당한 수입을 올리는 온라인 소매상의 행태를 가리키는 말로 처음 사용됨.

링크 블로그(link blog) - 주로 다른 웹사이트와의 링크가 그 내용을 이루는 블로그. 인터넷에서 가장 인기 있는 블로그 가운데  몇몇 사이트가 이러한 링크 블로그임. 그러나 링크 블로그는 광고 사이트에 대해 트래픽을 생성하기 위해서 스패머들에게 이용당할 수도 있음.

마이스페이스(MySpace) - 대중적인 소셜 네트워킹을 할 수 있는 웹사이트. 회원들이 개인적인 '공간(spaces)'에서 친구들과 선택적으로 정보를 공유할 수 있음. 원래는 열정적인 음악가나 밴드 등이 서로 음악이나 콘서트 일정 따위를 공유하는 사이트였지만 이제 인터넷에서 가장 인기 있는 곳이 되었으며, 2005년에 뉴스사(News.Corp)가 인수했음.

무버블 타입(Moveable Type) - 식스어파트 사(Six Apart, Ltd)에서 기업 블로그 활동을 지원하기 위해 개발한 소프트웨어. 트랙백 기능으로 잘 알려져 있음.

바이러스 마케팅(viral marketing) - 구전으로 정보를 전하는 모든 마케팅 기술. 입소문, 또는 게릴라 마케팅으로 불리기도 함.

방문자(visitor) - 사이트를 방문하는 사람이나 로봇 프로그램. 특정한 시간대(보통은 24시간)에 적어도 한 번 이상 방문하는 사람을 고유 방문자라고 함.

배너 광고(bannerad) - 웹페이지에 사용되는 그래픽 이미지의 광고. 방문자가 해당 페이지에 와서 광고를 보았을 때 이것을 '인지(impression)'라고 함. 방문자가 배너를 클릭하고 해당 회사의 사이트로 가게 되면 이것을 '클릭 스루(click through)' 라고 함.


글쓴이 권대리 http://kkd4139.tistory.com/ 주인장 허락 하에 가져온 글입니다.
내용 변경 금지, 퍼가실땐 권대리님에 대한 저작권 표시 부탁드립니다.
And
prev | 1 | 2 | 3 | 4 | ··· | 9 | next