본문 바로가기

전체 글

(22)
iPhone 3GS, iPad 앨범커버 최적 크기 내 iPhone 3GS 의 OS 를 iOS 5 로 업데이트한지 벌써 몇 달이 지난 것 같다. 맨 처음 iOS 5 를 사용해보고는 찾아낸 문제점이 iPhone 3GS 의 커버플로우 문제였다. 문제인즉, 해상도가 높은 앨범커버를 사용하고 있는 앨범이 화면에 나타나면 앨범사진을 로딩하던 중 '음악' 어플리케이션이 종료되어 버린다! 그래서 각 장치별로 앨범커버의 최적 크기를 재어보았다. 잰 방법은 이러하다. 우선 iPhone 3GS 에서 커버플로우 모드로 들어간 다음 (잠자기 버튼) + (홈 버튼) 을 이용해서 화면캡처를 했다. 다음은 세로 모드(재생 모드)로 들어가서 같은 방법으로 화면캡처를 하여 이를 컴퓨터로 가져왔다. 그 다음 이미지 처리하는 프로그램을 이용해서 앨범 커버가 나타나는 영역의 픽셀 수를 쟀다..
Linux 에서 C 코드 컴파일하기 리눅스에서 C 언어를 활용하여 프로그램을 만들기 위해서는 소스코드를 작성할 줄도 알아야하지만 먼저 작성한 코드를 컴파일하여 실행할 수 있도록 만들줄 알아야 한다. 다음과 같이 간단한 C 프로그램, Hello world 를 작성하자. // File name : hello.c #include int main() { printf("Hello, world!\n"); return 0; } 이제 이 프로그램을 컴파일하고자 한다면 다음과 같이 입력한다. $ cc -c hello.c $ ll 합계 8 -rw-rw-r-- 1 timewalker timewalker 74 2011-11-10 14:17 hello.c -rw-rw-r-- 1 timewalker timewalker 1504 2011-11-10 14:18 hel..
SELinux 관련 알기쉽게 잘 써진 글 SELinux 각종 리눅스관련 트러블슈팅을 처리하다보면 공부해야할것들이 참 많다. 요즘 자주 거론되는 문제가 SELinux 관련된 문제들인데, SELinux 라면 아직 못들어본 사람이 꽤 많이 있을것이다. SELinux의 내부적인 구현원리 같은 부분은 이 문서에 다루고자 하는 내용이 아니다. SELinux의 아키텍처나 코드에 대한 부분을 더 많이 알기위해서는 IBM의 기술문서(http://www-128.ibm.com/developerworks/kr/library/l-selinux/index.html) 을 참고하거나 NSA의 홈페이지(http://www.nsa.gov/selinux/)등를 참고하기 바란다. 필자는 단지 여러분이 시스템을 관리하면서 새롭게 만나게되는 SELinux에 관련된 문제를 이문서를 통..
Geant4: a toolkit for the simulation of the passage of particles through matter Geant4 란 매질 내부를 지나가는 입자들에 대한 시뮬레이션 툴로서 http://geant4.cern.ch 에서 제공하는 공짜프로그램이다. 이번 방학중 매일 오후 1시부터 3시까지 연구실에서 박사님들께 이놈을 쓰는 방법을 배우고 있는데, 숙제를 배당받은 김에 공부한 내용을 기록으로 남길겸 포스팅을 해본다. 내가 배정받은 숙제는 납판떼기를 향해 나아가는 감마의 운명에 대한 시뮬레이션이다. 일단 Geant4 로 작성하게 되는 가장 간단한 프로젝트(C 언어 처음 배울 때의 hello, world 쯤으로 생각하면 된다.)의 기본 구조는 다음과 같다. /projectmain /include PhysicsList.hh DetectorConstruction.hh PrimaryGeneratorAction.hh /sr..
Windows, shutdown 명령어 윈도우즈에서 shurdown 명령어를 이용하여 스크립트를 만들어 작업에 이용할 수 있음. shutdown 명령어의 매뉴얼 : 명령 프롬프트에서 shutdown 을 입력하거나 shutdown /? 를 입력하면 나타난다. C:\Users\timewalker>shutdown 사용법: shutdown [/i | /l | /s | /r | /g | /a | /p | /h | /e] [/f] [/m \\컴퓨터][/t xxx][/d [p|u:]xx:yy [/c "주석"]] 인수 없음 도움말을 표시합니다. 이 옵션은 /?를 입력하는 것과 같습니다. /? 도움말을 표시합니다. 아무 옵션을 입력하지 않는 것과 같은 결과를 제공합니다. /i GUI를 표시합니다. 이 옵션은 첫 번째 옵션이어야 합니다. /l 로그오프합니다. ..
Compute Node; 노드 노드(Node)는 로컬 네트워크(LAN), 즉 네트워크의 기본요소인 지역 네트워크에 연결된 컴퓨터와 그 안에 속한 장비들을 하나로 싸잡아 하나의 노드라고 한다. 예를 들면 A라는 로컬 네트워크에 컴퓨터 20대와 허브 2개 공유기 2개 ,그리고 라우터 가 있다. 이들 네트워크A에 속한 장비들을 하나의 노드라고 한다.
NFS 서버 설정하기 Scientific Linux 5.4 에서 NFS 서버를 설정해 보았다. 일단 서버로 사용할 컴퓨터에서 /etc/exports 파일을 수정해야 한다. 두 개의 필드로 구분하여 파일을 작성한다. (공유할 디렉토리) (IP address 혹은 hostname):(공유옵션들) 공유옵션들은 따옴표 ',' 로 구분한다. 공유 대상 설정이 끝나면 service nfs start (또는 /etc/init.d/nfs start) 를 이용해서 서비스를 시작한다. 그런데 Scientific Linux 의 기본 보안설정 때문에 클라이언트에서 곧장 사용할 수는 없었다. 서버에서 rpcinfo 를 이용하면 사용/서비스 중인 포트목록을 볼 수 있다. NFS 서비스를 주고 받을 서버와 클라이언트 모두 NFS 가 이용하는 포트가 개..
C++ 에서 cin 메소드를 이용해서 문자열을 입력받을 때, 특정 문자를 무시하고 받기 (cin.ignore) 자료 입수 경로 : http://yuihorie.tistory.com/84 다음과 같은 소스코드를 입력하고 컴파일해보자. 실행결과는 다음과 같다. 실행결과를 보면 이 프로그램은 사용자로부터 문자열을 입력받는 프로그램이다. 두 개의 문자열을 입력받게 되어있는데 처음 입력했을 때는 String #1 을 입력하자마자 String #2 는 입력을 받지도 않고 넘어가게 된다. 이것은 문자열 배열에 남아있던 버퍼 메모리 때문이다. 사용자가 마지막에 carrage-return(개행문자)을 입력할 때 메모리 버퍼에 이 값이 남아서 다음 cin 메소드가 이 값을 받아버린 것이다. 따라서 Try again! ........ 메시지가 나타나고 다시한번 두 개의 문자열을 입력받는데, 이 때는 정상적으로 두 문자열을 잘 받는 ..