반응형

전체 글 118

UAC (사용자 계정 컨트롤) - 관리자 권한으로 실행되는 프로그램 만들기.

windows xp에서 vista로 넘어가면서 vista이상 버전의 windows 사용자들은 프로그램 실행 시에 "관리자 권한"으로 프로그램을 실행 하지 않으면 프로그램이 제대로 작동 하지 않거나 마우스 오른쪽 키를 눌러 "관리자 권한으로 실행(A)" 을 선택하면 관리자 권한으로 실행하겠냐는 팝업창을 접할 수 있게 되었다. 즉, 사용자 계정 컨트롤[UAC(User Account Control)] 개념이 생긴 것이다. 실행 할때마다 마우스 오른쪽 키를 누르고 관리자 권한으로 실행하고 게다가 관리자 권한으로 실행 하겠냐는 팝업창을 접한다면 사용자는 얼마나 불편함을 느끼겠는가? 이에 따라 관리자 권한이 없으면 안되는 프로그램들은 난감한 상황에 빠졌다. 그래서 프로그래머들은 프로그램을 관리자 권한으로만 실행 할..

The others 2013.07.24

Ubuntu 에서 네이트온 사용하기

리눅스 우분투에서 네이트온 사용하기! 네이트온을 우분투에서 사용하고 싶은데 우분투의 버전마다 각각의 정해진 네이트온 버전드를 다운받아서 설치해야만 사용할 수 있다. 하지만 언제부터였던가 더이상 네이트온 개발 배포 상태가 잘 이뤄지지 않는것 같았다.우분투 12.04 버전을 지원하는 네이트온 설치파일부터 그이상 버전들은 전혀 배포 되지 않았다.그래서 네이트온을 어떻게 하면 이용 할 수 있을까 찾아보던중 pidgin 통합 메신저를 알게 되었다. 아래의 피진 메신저 공식 홈페이지에서 다운 받거나 http://pidgin.im/download/ubuntu/ 아래의 파일을 다운 받아서 더블 클릭하면 소프트웨어 센터에서 설치 파일이 열릴 것이다. 32 bit 64 bit 그리고 다음으로 pidgin을 검색 해 보면 ..

Linux/Ubuntu 2013.07.23

리눅스 파일 시스템

Linux File System -리눅스 시스템 프로그래밍을 하기 위해서는 우선 리눅스의 파일과 파일시스템에 대해 알 필요가 있다. 리눅스에서 거의 모든 장치와 자료의 처리 단위는 파일이므로 특히 중요하다. 우선 파일과 디렉토리에 대한 개념을 설명하겠다. 파일은 컴퓨터에서 자료를 저장하는 논리적인 기본 단위인데, 내용 뿐만 아니라 이름, 속성 등의 정보를 함께 가지고 있다. 이러한 속성 정보는 시스템 내부적으로 아이노드(inode)라는 블록에 저장된다. 디렉토리는 이러한 파일들을 묶어서 저장하여 관리하는 하나의 특수한 파일이라고 볼 수 있다. 디렉토리는 하위 디렉토리(subdirectory)를 포함 할 수 있다. 리눅스의 파일시스템은 이러한 파일과 디렉토리들이 계층적으로 구성된 구조를 가지고 있다. 이런..

[VIM] vi편집기 명령어 및 VIM 설정

-vim 설치 sudo apt-get install vim -SET 명령어set 명령어는 vi 편집기에서 Esc 버튼을 누른 후 세미콜론( : ) 을 입력하면 명령 입력을 사용 할 수 있다.보통 vi 편집기에서 코딩 하는 것이 참 불편 하다고 생각 되는 사람들은 명령어 사용을 전혀 하지 못하여 많은 불편함을 느낄 것이다.예를 들어 자동 들여쓰기 등... 그래서 명령어에 대해 소개 한다. *TIP. set 의 모든 명령어는 앞에 no를 붙이면 옵션을 해제 할 수 있다. (예 : set noai) set ai : 자동 들여쓰기 옵션이다. 윗라인에 맞춰 같이 자동으로 들여쓰기를 해준다.(=set autoindeant)예 set si : if 나 for문 등의 코딩 내용을 입력하고 다음 라인으로 이동시에 자동으..

Linux/Ubuntu 2013.07.20

Linux에서의 Thread 와 Mutex. (lpthread)

Linux에서의 Thread (lpthread). 일단 Thread에 대해 설명들어가기 전에 프로세스에 대해 설명 하도록 하겠다. 사람들이 흔히 알고 있는 프로세서와 프로세스 많이들 착각하고 둘 다 같은것 아니야~? 라는 잘못된 생각을 가진 사람들이 있다. 하지만 전혀 다르다. 프로세서는 말 그대로 처리자 이다. 즉, 컴퓨터의 CPU라고 할 수 있다. 그리고 프로세스는 프로세서에서 처리되는 프로그램이라 할 수 있다. 프로세스 내부에는 n개의 Thread가 존재 할 수 있으며, 여러개의 프로세스가 특정 자원들을 사용하며 함께 작동되어 돌아갈 때 프로세스 간의 통신을 시그널로 할 수 있다. 물론 시그널을 이용해서 프로세스 내부의 Thread를 동기화를 위해 사용 하는 방법 도 있으며, 임계영역(Critica..

Linux/Thread 2013.07.19

visual stdio2012의 error C4996 에러 해결법.

visual studio 2012로 컴파일을 하는데 에러가 나서 되지 않았다.... 에러의 내용은 아래와 같다.... error C4996: '_getws': This function or variable may be unsafe. Consider using _getws_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 아무래도 visual studio2012가 보안등급을 높여서 visual studio2010 버전 까지의 Warning 을 에러로 처리 해버린 것 같다. 해결책은 프로젝트의 오른쪽 키를 눌러 속성에서 c/c++ 항목의 전처리기 에서 전처리기 정의 맨 뒤에 ;_CRT_SECU..

The others 2013.07.17

윈도우 시스템 프로그래밍

일단 프로젝트 생성 방법이다. 다음과 같은 두 소스의 내용으로 프로젝트를 생성하고 컴파일 해준다. AdderProcess.cpp ⁄* AdderProcess.cpp 프로그램 설명 : main 함수의 전달인자를 덧셈하는 프로그램. *⁄ #include #include #include int _tmain(int argc, TCHAR* argv[]) { DWORD val1, val2; val1=_ttoi(argv[1]); val2=_ttoi(argv[2]); _tprintf(_T("%d + %d = %d \n"), val1, val2, val1+val2); _gettchar(); ⁄⁄프로그램의 실행을 잠시 멈추기 위해. return 0; } CreateProcess.cpp ⁄* CreateProcess.cpp..

Windows 2013.07.17

chrome NACL 개발 하기!

개발 환경 구축 순서!!!(개발 환경은 윈도우 기준으로 작성하여 소개 하도록 하겠다.) 1단계 : 우선 Native Client SDK를 다운로드 해야 한다. 하지만 그전에 아래와 같은 전제 조건이 있다. 1.Python 을 다운로드 받아 설치 한다. http://www.python.org/download/ ※참고로 크롬에서는 3.X버전을 지원하지 않으므로 2.X버전 중에 최신 버전을 다운로드 받도록 한다. -각 개인의 운영체제에 맞는 설치 파일을 다운 받았다면 설치해 주자.아무것도 건드릴 것 없이 Next 버튼을 눌러 설치해 줬다. -설치가 끝났다면 환경 변수에 Python의 디렉토리 (C:\python[버전])을 추가 한다. 각 버전마다 디렉토리의 명이 다를 수 있으니 확인해서 한다.제어판 - 시스템..

Chrome 2013.07.15

ls 명령어 구현.

학교 수업 Linux System Programming 의 과제로 ls 명령어를 구현 하라고 문제를 받았다.... 문제는 아래와 같다.... 주어진 디렉토리 내에 존재하는 파일과 디렉토리를 나열하고, 디렉토리의 경우 재귀적으로 방문해서 그 디렉토리 내에 존재하는 파일과 디렉토리를 나열하는 프로그램을 작성하시오. 즉, "ls -R" 명령과 동일한 결과를 보이도록 하시오. 소스 파일 #include #include #include #include #include #include #include int ls(char *argv) { DIR *pdir; struct dirent *pde; struct stat buf; int i=0; int count =0; char *dir_name[255]; memset(d..

반응형