반응형

전체 글 798

C++ Class 생성자 소멸자 간단한 코드

/* * http://sosal.tistory.com/ * made by so_Sal */ class에 대한 코드를 한번 살펴보겠습니다. #include #include using namespace std; //간단한 입출력 헤더와 string 제어 헤더문입니다. class CTest{ private: const int x; public: CTest(); // 디폴트 생성자 CTest(int nValue); ~CTest(); //클레스가 종료될때 호출되는 함수 void print() const; const char *changeText() const; }; /* * 클레스 선언문입니다. * private에는 외부에서 접근할수 없는 변수입니다. * public안에서 선언된 함수들이 private 변수에 접..

System - 02. system() 자식 프로세스

/* * http://sosal.tistory.com/ * made by so_Sal */ system() 함수에 대해 알아보겠습니다. #include int system(const char * string) system() 함수는 굉장한 편리함을 가져다 주는 함수입니다. 어떻게 보면 게으른 사람들의 전유물이기도 하지요.. shell? :: 사용자가 입력하는 명령어들을 기계어로 번역해주는 명령 해석기 쉘은 사용자가 운영체제와 대화할 수 있는 중간 역할자. 인터페이스가 됩니다. 쉘에서 사용자가 한 말을 받아 운영체제에 전해주고, 운영체제는 그 답을 쉘을 통해서 사용자에게 보여주게 되는것입니다. 쉘 역시 하나의 프로그램입니다. (bash, sh, csh 등 다양한 종류의 쉘이 있는데.. 리눅스 콘솔창에서 우..

System - 01. Process 개념

/* * http://sosal.tistory.com/ * made by so_Sal */ 프로세스 :: 컴퓨터 내에서 실행중인 프로그램을 일컫는 용어. 프로세스란건 아주 간단합니다. Ctrl + Alt + delete로 작업관리자를 켜봅시다. 프로세스 텝을 가보시면 프로세스들의 목록을 쭉~ 보실 수 있습니다. putty를 4개나 켜놨더니 프로세스에 4개가 올라와있네요. 항상 켜져있는 메신저 na**까지 보입니다. 프로세스, 쉽게 와닿나요? 리눅스는 위 그림의 윈도우와 같은 다중 태스킹 운영체제입니다. 한 시점에서 여러 개의 프로그램들이 실행되는데, 각 실행중인 프로그램은 하나의 프로세스가 되고, 물론 하나의 프로그램이 여러개의 프로세스가 될 수 있습니다. 따라서 여러 사용자들이 하나의 프로그램을 실행시..

Socket - 03. Client socket

/* * http://sosal.tistory.com/ * made by so_Sal */ #include int socket( int __domain, int __type, int __protocol); int connect(int socket, const struct sockaddr *address, size_t address_len); :: socket :: Socket - 01. Socket(), sockaddr 글을 참조하세요. :: connect :: Socket - 02. Socket - Server socket 글을 참조하세요. 기본적인 서버 - 클라이언트 소켓 구조에서 클라이언트측 소스는 무척이나 간단합니다. 정보를 주고 받을 수 있는 환경을 구축해야 하는 서버에 비하여 클라이언트는 전화..

시스템 보안 02.부팅초기화 스크립트 작성 문제

/* * http://sosal.tistory.com/ * made by so_Sal */ 보안모니터링 프로그램 secure agent를 컴파일하여 실행파일을 얻었다. 그런데 이 실행파일은 daemon형태로 시스템에서 항상 실행되어야 하는 프로그램이다. 시스템이 부팅시마다 secure agent가 실행될 수 있도록 완전한 부팅 스크립트를 작성하여 적절한 위치에 설치하시오. 현재 secure agent 데몬의 실행파일 경로는 /usr/local/bin/sagentd이며, 설치하고자 하는 시스템은 solaris이다. 데몬이란 ? // background에서 시스템을 위해 움직이는 프로그램을 말한다. 사용자의 여러가지 요청에 서비스하기위해 항시 돌아가는 프로세스 문제의 요지는? // "시스템이 부팅시마다 실행..

시스템 보안 01.inetd 데몬 프로세스 반영 문제

/* * http://sosal.tistory.com/ * made by so_Sal */ 그동안 ftp서버로 사용하던 시스템을 ftp서비스를 더이상 제공하지 않고 다른 용도로 사용하게 되었다. 현재 제공되고 있는 ftp서비스를 중지시키고 앞으로도 부팅시에도 더이상 제공되지 않도록 필요한 시스템 설정을 바꾸시오. inetd.conf :: inetd 설정파일 이 설정파일의 수정을 통하여 ftp 서비스를 중지시키고, 부팅시 더이상 제공되지 않도록 만들어보자. 설정파일은 /etc에 존재한다. vi /etc/inetd.conf:set nu // 위 그림의 좌측과 같이 번호를 띄울 수 있다. 17번 줄을 보니, 아래 19,20번 줄이 FTP와 TELNET 서비스에 대한 내용인듯 하다. ftp 서비스를 중단시키기 ..

커널 분석기 Vi + ctags + cscope

vi. ~/.vimrc :: ~는 사용자 home풀더. .vimrc 파일은 vim을 실행시킬때 자동으로 실행되는 파일입니다. // .vimrc 내용 // set tabstop=4 # 탭간격 4칸 set shiftwidth=2 # >>나 cscope.files [cscope]를 실행합니다. cscope는 두부분으로 나뉩니다. 윗부분은 결과물, 아랫부분은 검색부분입니다. 각 부분은 [tab] 키로 이동할 수 있습니다. Find this C symbol: ctags와 마찬가지로 C심볼을 찾습니다. (변수, 함수, 매크로, 구조체 등) Find this global definition: 전역 선언만 검색합니다. Find functions called by this function: 한 함수에 의해 호출되는 또다..

Linux/Linux_technic 2009.10.01

C언어 String과, 관련함수 function

/* * made by so_sal * http://sosal.tistory.com/ */ #include :: c언어 에서 사용합니다. 문자열 처리 함수들을 모아놓은 헤더파일입니다. #include :: c++에서 사용합니다. (사실 안에 string.h를 포함합니다.) strlen() :: string lenth :: 길이 구하기 strcpy() :: string copy :: 복사 strncpy() :: string + n + copy :: n만큼 복사 strcmp() :: string compare :: 문자열 비교 (대소문자 구분) strncmp() :: string + n + copy :: 문자열 n만큼 비교 (대소문자 구분) strcat() :: string concatenate :: 문자열..

Pointer * Reference

/* * made by so_sal * http://sosal.tistory.com/ */ #include using namespace std; 포인터란? :: 주소값을 직접 컨트롤 하기 위해서, 실제 어떤 주소값을 저장하는 변수입니다. :: 주소값 수의 크기는 4byte입니다. 따라서 포인터의 크기도 4바이트입니다. 자료형에 따라서 포함하는 메모리 크기가 다릅니다. 따라서 포인터는 메모리의 처음만을 가르치고, 포인터 자체의 자료형에 따라서 메모리를 읽게 됩니다. ex) int형 포인터 :: int* pointer; 또는 int *pointer; char형 포인터 :: char* pointr; 또는 char *pointer; (포인터의 위치는 관계없다) 변수명 앞에 &(reference)를 붙인다면, 그..

반응형