컴퓨터공부 362

[컬럼] 초보자를 위한 임베디드 리눅스 학습 가이드

1. 개요 이 문서의 내용은 정말 초보자가 임베디드 리눅스를 어떻게 접근하면 좋은가에 대한 생각을 적어 놓은 것이다. 2. 저작권 이 문서는 GNU 라이센스를 따른다. 단 최초 작성인은 유영창임을 표시하여야 한다. 3. 문서 버전 1.0 이 문서에 불만이 있거나 다른 생각이 있다면 여기로 메일을 보내 줄것 frog6502@hanmail.net 목차 1. 개요 2. 저작권 3. 문서 4. 임베디드 리눅스를 공부하기 위하여 자신의 상태에 따라서 무엇을 해 야 하는가? 4.1 임베디드리눅스를 공부하고자 하는분들이 가장 먼저 해야 할일 4.2 리눅스를 설치 해 본적도 없는 초 울트라 초차 4.3 리눅스 명령에 익숙하지 않다면 4.4 리눅스 디렉토리 구조를 모른다면 4.5 쉘 스크립트를 모른다면 4.6 유닉스 운..

ssh 터널링

ssh 터널링을 이용하면 이용하지 못하던 것도 이용할 수 있다... 언젠가 써먹을수도 있을줄 모르니.. 우선 스크래래래랩..ㅋ + 요즘같이 스니핑툴을 흔하게 구할 수 있는 상황에서는 모든 명령(접속 아이디, 암호 등)이 평문으로 전송되는 FTP는 사용하기가 많이 꺼려지죠.. 안타깝게도 DS-106e는 기본으로 SFTP를 지원하지 않습니다. 다음은 SFTP를 이용하지 않고, SSH의 터널링을 이용한 FTP 접속 방법에 대해서 설명합니다. 이 방법은 또한 FTP 접속을 차단해둔 네트워크 환경에서도 FTP 서버로 연결할 수 있습니다. 전 터널링이라는 기술을 자주 사용하고 있습니다. 예를 들면, 회사 업무상 원격지에 있는 서버에 접속해야하는 경우가 종종 발생합니다. 문제는 이 서버가 있는 곳에서 외부에서의 접근..

미로찾기(백트래킹, backtracking) - 지나간 모든 경로만 표시

#include int map[9][9] = {{2, 2, 2, 2, 2, 2, 2, 2, 2}, {2, 0, 0, 0, 0, 0, 0, 0, 2}, {2, 0, 1, 1, 1, 0, 0, 0, 2}, {2, 0, 1, 0, 1, 0, 0, 0, 2}, {2, 0, 1, 0, 1, 0, 0, 0, 2}, {2, 0, 1, 1, 1, 0, 0, 0, 2}, {2, 0, 0, 0, 0, 0, 0, 0, 2}, {2, 0, 0, 0, 0, 0, 0, 0, 2}, {2, 2, 2, 2, 2, 2, 2, 2, 2}}; int visit(int x, int y); void print(); int success; int start_x, start_y; int end_x, end_y; int sp, ri[100], r..

미로찾기(백트래킹, backtracking) - 모든 경로 출력

#include int map[9][9] = {{2, 2, 2, 2, 2, 2, 2, 2, 2}, {2, 0, 0, 0, 0, 0, 0, 0, 2}, {2, 0, 2, 2, 0, 2, 2, 0, 2}, {2, 0, 2, 0, 0, 2, 0, 0, 2}, {2, 0, 2, 0, 2, 0, 2, 0, 2}, {2, 0, 0, 0, 0, 0, 2, 0, 2}, {2, 2, 0, 2, 2, 0, 2, 2, 2}, {2, 0, 0, 0, 0, 0, 0, 0, 2}, {2, 2, 2, 2, 2, 2, 2, 2, 2}}; int visit(int x, int y); void print_path(); int success; int start_x, start_y; int end_x, end_y; int sp, ri[10..

미로찾기(백트래킹, backtracking) - 지나간 경로 출력

#include int map[7][7] = {{2, 2, 2, 2, 2, 2, 2}, {2, 0, 0, 0, 0, 0, 2}, {2, 0, 2, 0, 2, 0, 2}, {2, 0, 0, 2, 0, 2, 2}, {2, 2, 0, 2, 0, 2, 2}, {2, 0, 0, 0, 0, 0, 2}, {2, 2, 2, 2, 2, 2, 2}}; int visit(int x, int y); void print_path(); int success; int start_x, start_y; int end_x, end_y; int sp, ri[100], rj[100]; void main() { sp = 0; start_x = 1; start_y = 1; // 시작지점 end_x = 5; end_y = 5; // 최종도착지점..

파이어 폭스가 아무 이유 없이 죽는다면?

학교에서 파이어폭스를 깔았는데.... 네이버 사이트에 들어가면 아무 이유 없이 죽더군요.. 제가 생각했을때 네이버의 스크립트와 파이어폭스가 충돌을 일으키는것 같지만.. 우선 아래에 것부터 해봐야하겠습니다. + 언제부터인가 파이어폭스가 심심하면 죽더군요. 조선일보사이트에서 죽는건 그렇다치고 그 이유를 찾으러 들어간 http://forums.mozilla.or.kr/ 에서 죽어버릴때의 황당함이란...-_-; 확장기능을 죄다 없애고 하나씩 추가해봤습니다. 문제는 Fasterfox

21세기 무선 기술이 걸어온 길

무선 기술이 세상에 알려진 이래로, 이들에게는 항상 차세대라는 말이 접두어처럼 붙어왔으며, 21세기를 시작한 지금도 무선 기술은 차세대라는 이름으로 우리에게 소개되고 있다. 2000년 차세대라 불리던 무선 기술에서부터 현재 상용화된 무선 기술들. 그것에 대해 알아보자. 이대영 기자 20세기말, 많은 이들이 21세기에는 무선의 시대가 올 것이라고 예상한 것처럼 현재 무선 기술은 우리 주변에 널리 확산되고 있다. 특히 1980년대부터 발전한 이동통신기술은 1990년대부터 폭발적인 성장과 함께 우리네 생활 패턴마저 바꿨으며, 기술 발전에 대한 기대는 나날이 더 커져만 갔다. 2000년 이전 대부분의 무선 기술들이 새로움으로 가득 차 있었지만, 2007년 현재 차세대라 불리는 무선 기술 중에는 최근에 발명된 기..

컴퓨터공부 2007.10.05

변수의 scope, 스코프, 범위

1. 지역변수 (local variable / automatic variable) 지역변수를 다른 표현으로 자동변수라고도 한다. 지역내에 생성되었다가 지역을 벗어나면 자동으로 사라진다고 해서 붙여진 이름이다. 원래 원칙적으로는 지역변수 선언시, 앞에 auto 라는 키워드를 붙여 주게 되어있지만, 생략이 가능하며, 생략하는게 일반적이다. 중괄호에 형성되는 지역내에 형성되는 변수 => 선언된 지역내에서만 유효하다. 초기화를 안했을 경우 쓰레기 값이 들어가게 된다. int fct_one(void) { int one = 0; int two = 0; … retrun 0; } int fct_two(void) { int two = 0; one = 10; // error!!! … return 0; } 지역변수(자동변수..

포인터와 참조자

//---------------------------------------------------------------------------------- //항 목 | 포인터 | 참조자 | 비 고 //---------------------------------------------------------------------------------- //Null 값 | 허용 |허용안함 | int *p; // 가능 // | | | int &r; // 불가능 //---------------------------------------------------------------------------------- //주소값 재 대입 | 허용 |허용안함 | p=&a // 포인터 p에 변수 a의 주소 대입 (가능) // ..

참조자의 오묘함

다음의 결과를 예측해 보세요!! 정답은 밑에.. + #include int x; int& f(int p) { p++; x = p; return x; } void main() { int y = 10; x = 12345; // 여기를 바꿀 것 f(y) = f(1) + 10; printf("result = %d\n",x); } + 해설 ↓↓↓↓ #include 1: int x; 2: int& f(int p) 3: { 4: p++; 5: x = p; 6: return x; 7: } 8: void main() 9: { 10: int y = 10; 11: x = 12345; // 여기를 바꿀 것 12: f(y) = f(1) + 10; 13: printf("result = %d\n",x); 14: } + 정답 : (..