 |
 |
 |
 |
 |
 |
가상 어플라이언스와 Open Virtualization Format 가상화는 서버의 효율을 극대화할 수 있는 기술 수준을 촉진하였을 뿐만 아니라 이전에는 불가능했던 새로운 기술에 대한 기회를
제공하였습니다. 이 중에는 가상 어플라이언스라는 기술이 있으며 이 기술을 이용하면 소프트웨어를 제공하고, 구성하고, 관리하는 방식을
기본적으로 변경할 수 있습니다.
그러나 가상 어플라이언스를 지탱하는 힘은 다양한 하이퍼바이저 사이에서 가상 어플라이언스를 자유롭게 공유할 수 있는 능력에
있습니다. 이 기사에서는 가상 어플라이언스 이면에 있는 생각과 이점을 배우고 Open Virtualization Format이라고 하는 가상 어플라이언스의 상호 운용성을 위한
표준 솔루션을 살펴볼 수 있습니다. |
|
|
|
2009년 10월 20일 (화) |
|
| |
Linux 전력 소비량 줄이기, Part 3: 조정 결과 세 편의 기사로 구성된 이 시리즈에서는 전력 효율 향상을 위해 시스템을 조정하는
방법에 대해 설명합니다. Part 3에서는 조정된 상태와 조정되지 않은 상태에서 다섯 가지 커널 내
거버너의 성능을 비교하여 Linux 기반 System x 서버를 최적화하는 방법에 대해 살펴봅니다. |
|
|
|
2009년 10월 7일 (수) |
|
| |
Linux와 Apache Hadoop을 사용한 클라우드 컴퓨팅 IBM, Google, VMWare 및 Amazon과 같은 기업들은 클라우드 컴퓨팅에 적합한 전략이나 제품을 제공합니다. 이 기사에서는 Apache Hadoop을 사용하여
Hadoop Cluster를 만들 수 있는 MapReduce 프레임워크를 구축하는 방법과 Hadoop에서 실행하는 샘플 MapReduce 애플리케이션을 작성하는 방법을
설명합니다. 또한 클라우드에서 시간이나 디스크가 필요한 작업을 설정하는 방법을 학습합니다.
|
|
|
|
2009년 10월 6일 (화) |
|
| |
AMEE를 사용하여 가정에서 에너지 모니터하기 전기는 보이지 않습니다. 사람들이 전기를 어떻게 사용하는지 이해하려면 전기를 볼 수 있어야 합니다. 이 튜토리얼에서는 에너지 데이터를
처리하기 위한 중립 웹 기반 API인 AMEE와 Current Cost 실시간 에너지 모니터를 XML, Ruby, Rails 및 Ajax와 결합하여 웹 기반 에너지 모니터링 시스템을 직접
제작하는 방법을 설명합니다. |
|
|
|
2009년 9월 29일 (화) |
|
| |
Linux 전력 소비량 줄이기, Part 2: 일반 및 거버너 관련 설정 세 편의 기사로 구성된 이 시리즈에서는 전력 효율 향상을 위해 시스템을 조정하는
방법에 대해 설명합니다. Part 2에서는 Linux CPUfreq 서브시스템의 일반 설정을 단계별로 살펴본 후
다섯 가지 커널 내 거버너 즉, 성능, 절전, 사용자 공간, 온디맨드 및 보존적 거버너와 해당 설정에
대해 자세히 설명합니다. |
|
|
|
2009년 9월 23일 (수) |
|
| |
Linux 전력 소비량 줄이기, Part 1: CPUfreq 서브시스템 세 편의 기사로 구성된 이 시리즈에서는 전력 효율 향상을 위해 시스템을 조정하는
방법에 대해 설명합니다. 먼저 Part 1에서는 전력 효율 향상을 위해 Linux 기반 System x 서버를 미세
조정하는 데 필요한 구성 요소와 개념을 간단히 살펴본 후 Linux CPUfreq 서브시스템을 활성화하는 방법,
C 및 P 상태에 대한 지침을 가져오는 방법 및 다섯 가지 커널 내 거버너(governor) 중에서 시스템의 전력 효율
향상을 위해 필요한 거버너를 결정하는 방법에 대해 설명합니다. |
|
|
|
2009년 9월 15일 (화) |
|
| |
Linux VFS(Virtual File System Switch) 해부 Linux는 유연성과 확장성 그 자체라고 할 수 있습니다. VFS(Virtual File System Switch)를
사용해 보십시오. 기존 디스크와 USB 플래시 드라이브, 메모리, 기타 스토리지
장치와 같은 다양한 장치에서 파일 시스템을 작성할 수 있습니다. 다른 파일 시스템의 컨텍스트 내에 파일 시스템을
삽입할 수도 있습니다. VFS의 강력한 기능을 확인하고 주요 인터페이스와 프로세스를 학습합니다. |
|
|
|
2009년 8월 31일 (월) |
|
| |
Git로 인한 분산 웹 개발 환경의 변화 버전 제어 시스템은 애플리케이션, 웹 사이트 또는 운영 체제를 개발하던지 상관 없이
대부분의 개발 프로젝트의 핵심 구성 요소입니다. 대부분의 프로젝트에는 여러 개발자가 참여하게
되는데 이 경우 각 개발자가 지역적으로 서로 멀리 떨어져 있을 수도 있습니다. 분산 버전 제어
시스템이 새로운 기능은 아니지만 Git 버전 제어 시스템은 개발자 간의 협업 및 상호 작용에 필요한
고유 지원을 제공합니다.
|
|
|
|
2009년 8월 25일 (화) |
|
| |
Subversion 사용자를 위한 Git, Part 1: 시작 DVCS(Distributed version control system)는 중앙 집중식 VCS에 비해 많은
장점을 가지고 있으며 이 모델을 찾고 있는 Subversion 사용자라면 Git가 좋은 출발점이 될
것입니다. 두 편의 기사 중 첫 번째 기사에서는 먼저 Subversion의 사용법을 간단히 살펴본 후
Git를 설치하고, 원격 저장소를 설정하고, 기본적인 Git 명령을 사용하는 방법에 대해 설명합니다. |
|
|
|
2009년 8월 4일 (화) |
|
| |
Vim 편집기로 스크립트 작성하기, Part 2: 사용자 정의 함수 사용자 정의 함수는 실제 환경에서 사용하고 있는 복잡한 프로그래밍 작업을
관리하기 위해 애플리케이션을 쉽게 관리할 수 있는 올바른 구성 요소로 분해하는 데 사용되는
필수 도구입니다. 시리즈의 두 번째 기사에 해당하는 이 기사에서는 몇 가지 실용적인 예제를 통해
Vimscript 언어에서 새 함수를 작성하고 전개하는 방법에 대해 설명합니다. |
|
|
|
2009년 7월 7일 (화) |
|
| |
SolarNetOne: 모든 사람을 위한 태양열 발전 네트워킹(영문) 이 세상에는 전력망이 제대로 확충되어있지 않은 지역이나, 컴퓨터 보급이 보편화되어있지 않은 지역, 그리고 인터넷 연결이 어려운 지역이 상당히 많습니다. 이와 반면에 현대 기술의 혜택으로 발전한 지역도 많기 때문에 오늘날의 지구촌은 "컴퓨팅 인프라가 갖추어진 지역"과 "컴퓨팅 인프라가 없는 지역"으로 양극화되는 현상이 심화되고 있습니다. 하지만 이러한 양극화를 극복하기 위한 기술도 많이 있습니다. 그러한 기술 중 하나인 SolarNetOne은 소형차보다 낮은 비용으로 지구촌 어디에나 설치할 수 있는 턴키 인터넷 핫스팟(전력, 컴퓨터 및 위성 업링크)입니다.
|
|
|
|
2009년 6월 30일 (화) |
|
| |
Linux 하이퍼바이저 분석 오늘날 Linux의 가장 중요한 혁신 중 하나는 하이퍼바이저(또는 다른 운영 체제를
위한 운영 체제)로의 변환입니다. 그리고 많은 하이퍼바이저 솔루션에서 Linux를 코어로 사용하고
있습니다. 이 기사에서는 하이퍼바이저에 대한 기본 개념과 Linux를 플랫폼으로 사용하는 두 가지
특별한 하이퍼바이저(KVM 및 Lguest)를 살펴봅니다. |
|
|
|
2009년 5월 31일 (일) |
|
| |
Linux: Lean, clean and green 그린 IT는 오늘날 가장 많은 주목을 받고 있는 기술 트렌드 중의 하나이며 GNU/Linux
커뮤니티에서는 이 문제에 성공적으로 대처해 나가고 있습니다. 여러 기업 파트너와 함께 GNU/Linux
운영 체제는 전력 소비, 탄소 배출 및 전자 폐기물 문제를 해결할 수 있는 솔루션을 제공합니다. |
|
|
|
2009년 5월 26일 (화) |
|
| |
Vim 편집기로 스크립트 작성하기, Part 1: 변수, 값 및 표현식 Vimscript는 Vim 편집기를 변경하고 확장하기 위한 메커니즘입니다. 스크립트를
사용하면 새 도구를 작성하고 일반 작업을 단순화할 수 있을 뿐만 아니라 편집기의 기존 기능까지도
재설계하여 변경할 수 있습니다. 시리즈의 첫 번째인 이 기사에서는 Vimscript 프로그래밍 언어의 기본 구성
요소인 값, 변수, 표현식, 명령문, 함수 및 명령에 대해 설명합니다. 또한 일련의 간단한 예제를 통해 기능을
직접 구현해 보면서 설명합니다. |
|
|
|
2009년 5월 6일 (수) |
|
| |
IBM Lotus Domino, Linux, 가상화, 확장성: 더 이상 상호 배타적이지 않은 용어(영문) IBM® Lotus® Domino®를 인프라에 적절하게 조정하는 데 지쳤습니까? 이제 최신 릴리스의 64비트 Lotus Domino on
Linux® 및 가상화를 통해 대규모 엔터프라이즈 환경과 Lotus Domino on Linux를 단일 공간에 구현할 수 있습니다. 이 기사에서는
현재까지 수행된 벤치마크와 이 솔루션을 초기에 채택한 업체의 결과를 설명하고 Lotus Domino에 맞게 인프라를 조정하고
확장하는 방법을 살펴봅니다.
|
|
|
|
2009년 5월 5일 (화) |
|
| |
VM 전개 자동화하기 여러 가상 시스템을 동시에 작성 및 구성해야 하는 경우가 종종 발생하지만
이때 각 시스템을 수동으로 복제 및 구성해야 한다면 매우 힘든 작업이 될 것입니다. 이 기사에서는
여러 자체 구성 VM을 빠르게 실행 및 활성화할 수 있는 자동 VM 전개 솔루션을 개발하는 방법을
보여 줍니다. 또한 시스템 시작 후 전개된 가상 시스템별로 사용자 정의된 애플리케이션을 실행하는
방법에 대해서도 설명합니다. |
|
|
|
2009년 3월 4일 (수) |
|
| |
ext4 분석 Extended File System 4 또는 ext4는 차세대 저널링 파일 시스템이며 이전
파일 시스템인 ext3과의 호환성도 제공합니다. ext4는 아직까지는 표준이 아니지만 앞으로
대부분의 Linux 배포판에서 후속 기본 파일 시스템으로 채택될 것입니다. 이 기사에서는 ext4에
대해 설명한 후 ext4가 많은 사용자의 새로운 파일 시스템으로 자리 잡게 될 것으로 예상되는
이유를 살펴봅니다. |
|
|
|
2009년 2월 17일 (화) |
|
| |
Linux on System z를 위한 5가지 네트워크/시스템 팁(영문) IBM® System z 시스템에서 Linux®를 시작하기가 상당히 쉬워지기는 했지만 아직까지도 일부 문제가 발생할 수 있습니다. "경로를 알 수 없음" 메시지, 잘못된 네트워크 서비스 동작, 종료 시 파일 시스템 손상, 많은 시간이 소요되는 부팅 경로 장치 프로세스, 가상 LAN 하드웨어 설치 등의 문제로 인해 S/390 시스템에서 Linux를 시작할 때 문제가 발생하는 경우 이 기사에서 소개하는 해결 방법을 시도해 보십시오. 또한 두 가지 SUSE 버그에 대한 경고 및 해결 방법에 대해서도 설명합니다.
|
|
|
|
2009년 2월 11일 (수) |
|
| |
Python 3 입문, Part 2: 고급 주제 Python 3은 Guido van Rossum이 개발한 강력한 범용 프로그래밍 언어의 최신
버전입니다. 이 버전에서는 이전 버전인 2.x 제품군과의 호환성이 지원되지는 않지만 일부 구문
문제가 정리되었습니다. 첫 번째 기사에서 이어지는 이 두 번째 기사에서는 새로운 Python 기능을
좀 더 살펴보고 추상 기본 클래스, 메타클래스 및 데코레이터의 변경 사항과 같은 고급 주제에
대해 자세히 설명합니다. |
|
|
|
2009년 1월 30일 (금) |
|
| |
Linux 프로세스 관리 분석 Linux에서 사용자 공간 프로세스를 생성 및 관리하는 과정에는 UNIX와 공통되는
많은 원칙뿐만 아니라 Linux만의 고유한 여러 가지 최적화 과정도 있습니다. 이 기사에서는 Linux
프로세스의 수명 주기를 검토하고 사용자 프로세스 생성, 메모리 관리, 스케줄링 및 소멸과 관련된
커널 내부 구조를 살펴봅니다. |
|
|
|
2008년 12월 20일 (토) |
|
| |
Python 3 입문, Part 1: 새로운 기능 Python 3은 Guido van Rossum이 개발한 강력한 범용 프로그래밍 언어의 최신
버전입니다. 이 버전에서는 이전 버전인 2.x 제품군과의 호환성이 지원되지는 않지만 일부 구문
문제가 정리되었습니다. 이 기사는 연재 기사의 첫 번째로서 언어에 영향을 주는 변경 사항과
이전 버전과의 호환성에 대해 설명하고 새로운 기능의 예제를 제공합니다. |
|
|
|
2008년 12월 19일 (금) |
|
| |
POWER 블레이드에서 리눅스를 활용한 복잡한 네트워크 구축 방법 블레이드는 특히 통신 서비스 제공업체에서 응용과 서비스를 위한 탁월한 선택입니다다. 하지만 이런 서비스 제공업체에 필요한 독특한 요구 사항은 종종 복잡하고 집중적인 관리와 계획이 필요한 환경 설정을 요구합니다. 결국 엄격한 요구 사항을 충족할 필요가 있습니다. 이 기사에서는 POWER6 JS22 블레이드 장비 설정을 위해 필요한 네트워크 환경 설정 계획과 구체적인 방안을 설명하겠습니다. |
|
|
|
2008년 12월 2일 (화) |
|
| |
무복사 기법을 통한 효율적인 데이터 전송 이 글은 무복사(zero copy) 기법을 통해 리눅스와 유닉스에서 실행되는 I/O 위주의 자바 애플리케이션의 성능을 향상시키는 방법에 대해 설명합니다. 무복사 기법은 중간 버퍼 간의 불필요한 데이터 복사를 피하게 해 주고, 사용자 공간(user space)과 커널 공간(kernel space) 사이의 맥락 전환(context switch) 횟수를 줄여 줍니다. |
|
|
|
2008년 11월 25일 (화) |
|
| |
윈도에서 리눅스로 디바이스 제어 응용 이식하기 양쪽 운영체제에서 디바이스 제어 동작 원리를 이해함으로써 마이크로소프트 윈도에서 리눅스로 디바이스 제어 응용을 이식하는 어려움을 극복합시다. 양쪽 운영체제에 나타나는 차이점을 설명하고 C/C++ 이식 예제를 제공합니다. |
|
|
|
2008년 11월 18일 (화) |
|
| |
IBM System p에서 SLES(SUSE)와 RHEL(Red Hat) 비교 (영문) IBM® System p®에 Linux®를 설치하고자 하는 대다수의 시스템 관리자들은 어떤 Linux 분산을 설치할 것인가라는 중요한 질문을 던지게 된다. 본 글은 Red Hat과 Novell의 두 가지 분산을 비교하고 각각의 장단점을 소개한다. 여기서 LoP(Linux on POWER), 두 분산의 역사, IBM과 이들과의 관계, 의사결정 프로세스에 필요한 요인들에 대해 설명할 것이다. 또한 SLES와 RHEL에 논리적 볼륨을 만드는데 있어 둘을 비교 및 대조해보겠다. |
|
|
|
2008년 11월 18일 (화) |
|
| |
/proc 파일 시스템을 활용한 리눅스 커널 접근 /proc 파일 시스템은 리눅스 커널과 사용자 영역 사이에 일어나는 통신 채널을 제공하는 멋진 가상 파일 시스템입니다. /proc 파일 시스템에서, 커널 구성 요소와 통신하는 수단으로 가상 파일을 읽고 쓸 수 있습니다. 하지만 일반 파일과는 달리 이런 가상 파일 내용은 동적으로 만들어집니다. 이 기사에서는 /proc 가상 파일 시스템을 소개하고 활용 방법을 보여줍니다. |
|
|
|
2008년 11월 11일 (화) |
|
| |
리눅스 커널 동적 적재 모듈 분석 커널 버전 1.2부터 등장한 리눅스 커널 동적 적재 모듈은 리눅스 커널에서 가장 중요한 기술 혁신 중 하나입니다. 동적 모듈은 커널을 동적으로 확장 가능하게 만든 기술입니다. 동적 모듈 뒤에 숨겨진 아이디어를 분석하고 독립적인 모듈이 동적으로 리눅스 커널의 일부로 자리잡는 방법을 배워봅시다. |
|
|
|
2008년 11월 4일 (화) |
|
| |
바닥부터 만들어보는 임베디드 리눅스 배포판 임베디드 환경에서 쓸 수 있는 리눅스 배포판을 어떻게 만들 수 있을지 배워보겠습니다. 이 내용에서는 TS-7800 싱글 보드 컴퓨터를 동작시키는 경우를 예로 들었습니다. 이 튜토리얼에서는 크로스 컴파일링(cross-compiling), 부트 로더(boot loader), 파일 시스템, 루트 파일 시스템, 디스크 이미지, 부트 프로세스 등 시스템을 만들고 배포판을 생성하는 데 결정해야 할 모든 측면에 대해 배울 것입니다. |
|
|
|
2008년 10월 28일 (화) |
|
| |
리눅스 스레드 모델 비교: LinuxThreads와 NPTL LinuxThreads 프로젝트는 원래 리눅스에서 멀티스레딩 기능을 제공했지만, POSIX 스레딩 표준을 준수하지는 않았습니다. 좀 더 최근에 NPTL(Native POSIX Thread Library)이 이런 간극을 좀 더 메워 나가고는 있지만, 다른 문제점이 여전히 남아 있습니다. 이 기사에서는 두 가지 리눅스 모델에 대한 몇 가지 차이점을 기술해 응용 프로그램을 LinuxThreads에서 NPTL로 이식하기를 원하거나 단순히 차이점이 무엇인지 살펴보기를 원하는 개발자를 지원합니다. |
|
|
|
2008년 10월 14일 (화) |
|
| |
젠(Xen) 가상 서버로 고가용성 제공하기 IBM System Director의 가상 가용성 관리자(Virtual Availability Manager)를 통해 젠(Xen) 가상 서버의 고가용성을 구현하는 자세한 방법을 단계별로 알아보겠습니다. 가상 가용성 관리자는 IBM Director의 확장 패키지인 IBM System Director 가상화 관리자 패키지에 포함되었습니다. 이번 기사에서 선결 사항과 셋업에서 문제 해결 방법까지 가상 고가용성 성능을 실현하는 데 필요한 모든 단계를 알려줄 것입니다. |
|
|
|
2008년 10월 1일 (수) |
|
| |
게으른 리눅스: 시스템 관리자를 위한 열 가지 트릭 열 가지 트릭을 익혀 전 우주에서 가장 강력한 리눅스 시스템 관리자가 되어봅시다. 음, 전 우주가 아닐지도 모르겠네요..., 하지만 큰 물에서 놀려면 이 정도 팁은 익힐 필요가 있답니다. SSH 터널, VNC, 암호 복구, 콘솔 훔쳐보기 등을 익힙시다. 각 트릭에는 예제가 따라오므로 각자 시스템에서 실험해볼 수 있습니다. |
|
|
|
2008년 9월 30일 (화) |
|
| |
TASK_KILLABLE: 리눅스에 도입된 새로운 프로세스 상태 리눅스 커널 2.6.25는 프로세스를 잠들기 상태로 만드는 새로운 프로세스 상태인 TASK_KILLABLE을 도입했습니다. 이 상태는 효과적이지만 잠재적으로 시그널을 받지 않는 TASK_UNINTERRUPTIBLE과 쉽게 잠에서 깨어나지만 좀 더 안전한 TASK_INTERRUPTIBLE을 대체하는 대안을 제공합니다. TASK_KILLABLE은 모든 시그널을 차단한 다음에 사건을 인터럽트 가능한 상태에서 기다리는 OpenAFS 파일 시스템 드라이버와 관련해서 2002년에 제시한 쟁점에서 출발합니다. 이런 새로운 잠들기 상태는 치명적인 시그널에 반응하도록 TASK_UNINTERRUPTIBLE을 반영합니다. 이 기사에서, Avinesh Kumar는 잠들기 분야를 커널 2.6.26과 예전 2.6.18을 예로 들어 설명하고, 리눅스 커널에 가해진 관련된 변경 사항과 이런 변경 결과 만들어진 새로운 API를 소개합니다. |
|
|
|
2008년 9월 30일 (화) |
|
| |
리눅스 플래시 파일 시스템 분석 JFFS(Journaling Flash File System)와 YAFFS(Yet Another Flash File System)에 대해 들어보았을테지만, 기반 플래시 디바이스 위에서 동작하는 파일 시스템이 무엇을 의미하는지 알고 있습니까? 이 기사는 리눅스를 위한 플래시 파일 시스템에 대해 소개하고, 닳기 균등화를 통해 반영구적인 기반 디바이스(플래시)를 보호하는 방법을 익히고, 기본적인 설계와 함께 다양한 플래시 파일 시스템을 알아보겠습니다. |
|
|
|
2008년 9월 23일 (화) |
|
| |
보안 강화 리눅스(SELinux) 분석 리눅스는 가장 안전한 운영체제라고 합니다. 하지만 NSA(National Security Agency)는 SELinux 등장 이후 리눅스를 한 등급 높였습니다. SELinux는 물샐틈없이 보안을 강화하도록 커널과 사용자 영역을 변경해서 확장하는 토대로 GNU/리눅스 운영체제를 채택했습니다. 커널 2.6 배포판을 설치했다면, SELinux를 사용하고 있다는 사실에 놀랄지도 모르겠습니다. 이 기사는 SELinux 이면에 숨은 아이디어와 구현 방법을 설명합니다. |
|
|
|
2008년 9월 16일 (화) |
|
| |
inotify로 파일 시스템 활동 감시하기 inotify는 읽기, 쓰기, 생성하기와 같은 파일 시스템 연산을 감시하는 리눅스 기능입니다. inotify는 반응성이 좋으며, 놀랍도록 사용하기 쉬우며, 크론 작업으로 바쁘게 폴링하는 경우보다 훨씬 더 효율적입니다. inotify를 응용 프로그램으로 통합하는 방식을 익히고 시스템 관리를 자동화하는 데 사용하는 명령행 도구 집합을 살펴봅시다. |
|
|
|
2008년 9월 16일 (화) |
|
| |
리눅스에서 백업 자동화하기 매우 중요한 데이터 손실은 굉장히 파괴적입니다. 그럼에도 수많은 전문가가 데이터 백업을 무시합니다. 이유야 제각기 다양하겠지만 가장 공통적인 해명은 판에 박힌 백업 수행이 정말 허드렛일이라는 것입니다. 기계는 평범하고 반복되는 일을 하는 데 탁월하므로 본래부터 단조로운 일과 사람의 선천적인 미루는 성향을 줄이는 핵심은 백업 과정을 자동화하는 것입니다. |
|
|
|
2008년 9월 9일 (화) |
|
| |
실시간 리눅스 아키텍처 분석 리눅스가 빠르거나 효율적이지 않다는 이야기를 하려는 의도는 아닙니다만, 어떤 경우에는 속력만으로 충분하지 않을 경우가 있습니다. 속력 대신 필요한 특성은 정해진 허용 범위 내에서 결정된 스케줄링 데드라인을 충족하는 능력입니다. 가상화 해법을 흉내내는 초기 아키텍처부터 표준 2.6 커널에 들어있는 옵션까지 다양한 실시간 리눅스 대안을 연구해서 각각이 어떻게 실시간을 달성하는지 살펴봅시다. |
|
|
|
2008년 9월 2일 (화) |
|
| |
리눅스 동적 라이브러리 분석 동적으로 링크된 공유 라이브러리는 GNU/리눅스에서 중요한 측면입니다. 공유 라이브러리는 실행 시점에서 동적으로 외부 함수에 접근하도록 만들기에 (필요할 때만 기능을 사용하는 방법으로) 전반적인 메모리 사용량을 줄입니다. 이 기사는 동적 라이브러리를 생성하고 활용하는 과정을 검토하며, 동적 라이브러리를 살피는 다양한 도구를 상세히 알아보고, 라이브러리 동작 원리를 속속들이 살펴봅니다. |
|
|
|
2008년 8월 20일 (수) |
|
| |
ext4로 이주하기 ext4는 오랫동안 자리를 지켜온 리눅스 파일 시스템의 최신 버전이며, 직전 버전만큼이나 중요하고 인기가 높으리라는 예상을 합니다. 리눅스 시스템 관리자로서, 여러분은 ext4의 장단점과 이주하기 위한 기본 절차를 숙지하고 있어야 합니다. 이 기사는 ext4를 채택할 시기, ext4를 위한 전통적인 파일 시스템 유지 관리 도구 활용법, 파일 시스템 성능을 최대로 이끌어내는 방법을 설명합니다. |
|
|
|
2008년 7월 22일 (화) |
|
| |
유닉스와 리눅스를 함께 어울리게 만들기 NIS(Network Information Service)로 리눅스(R)와 유닉스(R) 사이에 핵심 데이터베이스를 공유하는 방법과 NFS(Network File System)로 직접 연결하거나 automounter로 파일 시스템을 공유하는 방법을 살펴봅니다. 유닉스와 리눅스는 비슷하지만, 두 시스템을 통합하는 과정을 복잡하게 만드는 몇 가지 차이점이 있습니다. 예를 들어, 동일한 인증 시스템을 공유하지만, 대다수 시스템은 또한 단독으로 동작합니다. 이런 인증 정보 공유는 네트워크에 물린 모든 서버에 SSO(Single Sign-On) 기능을 제공합니다. |
|
|
|
2008년 7월 8일 (화) |
|
| |
PS3에서 리눅스 개발, Part 1: 장난감을 넘어서 소니 플레이스테이션 3(PS3)에서 리눅스가 돌아가지만, 제대로 돌리려면 미조정이 필요합니다. 연재물 1번 타자인 이 기사에서는 Peter Seebach가 PS3 리눅스의 기능과 장점을 소개하고, 미조정에서 몇 가지 장점을 얻기 위한 방법을 설명합니다. |
|
|
|
2008년 6월 24일 (화) |
|
| |
vi 입문 -- 컨닝 페이퍼 이용하기 이 튜토리얼에서는 강력한 시각적 편집기인 vi 사용법을 소개합니다. 여기서는 “컨닝 페이퍼(cheat sheet)”를 활용하여 짧은 시간에 vi를 능숙하게 익히는 지름길을 설명합니다. 이 튜토리얼을 통해 독자들은 커서를 이동하는 방법, 텍스트를 편집하는 방법, 삽입 모드로 전환하는 방법, 텍스트를 복사하여 붙여넣는 방법, 비주얼 모드나 멀티 윈도우 편집 등 주요 vim 확장 기능을 익히게 됩니다. |
|
|
|
2008년 6월 17일 (화) |
|
| |
리눅스 시스템 호출을 활용한 커널 명령 리눅스 시스템 호출은 우리가 매일 사용하는 기능입니다. 하지만 시스템 호출이 사용자 영역에서 커널 영역으로 어떻게 넘어가는지 알고 있나요? 리눅스 시스템 호출 인터페이스(SCI, System Call Interface)를 탐험하고 새로운 시스템 호출을 추가하는 방법(과 기타 대안)을 배우고, SCI 관련 유틸리티를 살펴보겠습니다. |
|
|
|
2008년 6월 17일 (화) |
|
| |
리눅스에서 공유 객체 활용하기 대다수 공유 메모리 활용법은 그다지 수월하지 않습니다. IBM에 근무하는 Sachin Agrawal은 C++ 전문 경험을 공유해 유용한 IPC(InterProcess Communication) 채널을 활용하는 핵심 기법을 객체 지향적으로 풀어내는 해법을 보여줍니다. |
|
|
|
2008년 6월 10일 (화) |
|
| |
리눅스 저널링 파일 시스템 분석 최근에 저널링 파일 시스템이 신비의 대상으로 여겨져 연구 주제로 떠오르고 있습니다. 하지만 오늘날 저널링 파일 시스템(ext3)은 리눅스에 기본으로 탑재되어 있습니다. 저널링 파일 시스템 이면에 숨겨진 아이디어를 찾아 시스템 전원 문제나 비정상 종료 과정에서 더 나은 무결성을 제공하는 방법을 익힙시다. 현재 사용 중인 다양한 저널링 파일 시스템을 익히고 차세대 저널링 파일 시스템도 미리 살펴봅시다. |
|
|
|
2008년 6월 4일 (수) |
|
| |
리눅스 팁: bash 매개변수와 매개변수 확장 스크립트에서 매개변수를 사용하는 방법과 여타 스크립트나 내부 함수에 매개변수를 전달하는 방법이 종종 헷갈리나요? 매개변수와 옵션에 대한 기본적인 적합성 확인이나 매개변수 문자열에 대한 단순 추출과 변환 작업을 수행해야 할까요? 이번 팁에서는 매개변수 사용법과 bash 셸에서 이용할 수 있는 다양한 매개변수 확장을 설명합니다. |
|
|
|
2008년 6월 3일 (화) |
|
| |
시스템 관리 툴킷: 로그 파일 이해하기 전형적인 리눅스나 유닉스는 시스템이 돌아가는 동안에 수많은 로그 파일을 생성합니다. 이 중에는 유용한 정보를 제공하는 로그 파일도 있고, 용량이나 자원을 계획하는 데 도움을 주는 로그 파일도 있습니다. 이 기사에서는 주요한 로그 파일 몇 개를 소개합니다. 또한 로그 파일이 존재하는 위치, 파일에 기록되는 정보 형식, 로그 정보를 유용하게 사용하는 방법도 살펴봅니다. |
|
|
|
2008년 5월 27일 (화) |
|
| |
리눅스 동기화 메서드 분석 리눅스 교육 과정을 거쳤다면, 동기화, 임계 영역, 잠금에 대해 배웠을지도 모르겠습니다. 하지만 커널 내부에서 어떻게 이런 개념을 활용할까요? 이 기사에서는 원자 연산, 스핀락, 읽기/쓰기 잠금, 커널 세마포어를 포함하여 2.6 커널에서 제공하는 잠금 메커니즘을 살펴봅니다. 또한 이 안전하고 효율적인 커널 코드를 작성하기 위해 사용 가능한 각 메커니즘을 알아봅니다. |
|
|
|
2008년 5월 27일 (화) |
|
| |
리눅스 커널 가상 기계 탐험 리눅스와 유연성은 손에 손을 잡고 함께 하는데, 가상화에 대한 옵션도 예외는 아닙니다. 하지만 최근에, KVM(Kernel Virtual Machine)이 등장하면서 리눅스 가상화 지형에 변화가 일어나기 시작했습니다. KVM은 리눅스 주류 커널(2.6.20)의 일부로 등장한 첫 번째 가상화 해법입니다. KVM은 리눅스 게스트 운영체제 가상화를 지원하며, 가상화를 지원하는 하드웨어에서 심지어 윈도우까지도 돌릴 수 있습니다. 리눅스 KVM 아키텍처와 KVM을 커널과 통합할 경우에 리눅스 활용 방법이 바뀔지도 모르는 이유에 대해 살펴보겠습니다. |
|
|
|
2008년 5월 20일 (화) |
|
| |
QEMU로 시스템 에뮬레이션하기 QEMU는 PC를 위한 완벽한 오픈 소스 에뮬레이터입니다. 프로세서를 에뮬레이션하는 이외에 QEMU는 네트워크, 비디오 하드웨어와 같은 필요한 모든 하위 시스템을 흉내냅니다. 또한 (255개 CPU까지 지원하는) SMP와 같은 최신 개념, ARM이나 PowerPC와 같은 다른 프로세서 아키텍처도 에뮬레이션합니다. 이 기사는 QEMU와 아키텍처, 리눅스 호스트에서 게스트 운영체제를 에뮬레이션하는 방법을 설명합니다. |
|
|
|
2008년 5월 20일 (화) |
|
| |
셀/B.E. 컨테이너 가상화, Part 2: 구현 이 연재는 하드웨어 자원에 초점을 맞춘 컨테이너 가상화(또는 운영체제 가상화)로 알려진 소프트웨어 가상화 형태와 오픈 소스 프로젝트인 OpenVZ를 설명합니다. 이 연재물은 소프트웨어 방법론을 통해 셀/B.E. 프로세서 가상화에 필요한 모든 컴포넌트와 기법을 상세하게 개괄합니다. 두 번째 기사는 연재물 Part 1에서 설명한 전용 가상화 구현 방법과 파티셔닝에 대한 세부 사항을 다룹니다. |
|
|
|
2008년 5월 6일 (화) |
|
| |
LAMP 시스템 조율, Part 3: MySQL 조율 LAMP(Linux, Apache, MySQL, PHP/Perl) 아키텍처를 활용하는 응용 프로그램이 끊임없이 개발되고 배포되고 있습니다. 하지만 때로 서버 관리자는 다른 사람이 작성했다는 이유만으로 응용 프로그램 자체에 대한 통제권이 거의 없습니다. 기사 셋으로 이뤄진 이번 연재물은 응용 프로그램 성능을 향상시킬 서버 환경 설정 항목을 다룹니다. 연재 마지막인 세 번째 기사에서는 최대 성능을 발휘하도록 데이터베이스 계층을 조율하는 데 초점을 맞춥니다. |
|
|
|
2008년 5월 6일 (화) |
|
| |
UID와 GID 변경하기 AIX에서 UID나 GID를 변경하려는 경우 파일 소유권이 어떻게 바뀌는지 올바로 이해해야 합니다. 확실히 이해하지 못한 채 UID나 GID를 변경했다가는 서버나 환경에 심각한 문제를 초래할 수 있습니다. |
|
|
|
2008년 5월 6일 (화) |
|
| |
셀/B.E. 컨테이너 가상화, Part 1: 개념, 아키텍처, 도구 이 연재는 하드웨어 자원에 초점을 맞춘 컨테이너 가상화(또는 운영체제 가상화)로 알려진 소프트웨어 가상화 형태와 오픈 소스 프로젝트인 OpenVZ를 설명합니다. 이 연재물은 소프트웨어 방법론을 통해 셀/B.E. 프로세서 가상화에 필요한 모든 컴포넌트와 기법을 상세하게 개괄합니다. 첫 번째 기사는 관련된 기본 개념을 설명하고, OpenVZ와 셀/B.E. 아키텍처의 독특한 특성과 함께 동작하는 원리를 설명하고, 몇 가지 OpenVZ 도구 사용법을 다룹니다. |
|
|
|
2008년 4월 29일 (화) |
|
| |
LAMP 시스템 조율, Part 2: 아파치와 PHP 최적화 LAMP(Linux, Apache, MySQL, PHP/Perl) 아키텍처를 활용하는 응용 프로그램이 끊임없이 개발되고 배포되고 있습니다. 하지만 때로 서버 관리자는 다른 사람이 작성했다는 이유만으로 응용 프로그램 자체에 대한 통제권이 거의 없습니다. 기사 셋으로 이뤄진 이번 연재물은 응용 프로그램 성능을 향상시킬 서버 환경 설정 항목을 다룹니다. 첫 번째 기사는 LAMP 아키텍처, 성능 기법, 기본적인 리눅스 커널, 디스크, 파일 시스템 미조정을 다뤘습니다. 두 번째 기사에서는 아파치와 PHP 컴포넌트를 최적화하는 방법에 초점을 맞춥니다. |
|
|
|
2008년 4월 29일 (화) |
|
| |
리눅스 네트워킹 스택 분석 리눅스 운영체제 중에서 가장 큰 기능은 네트워킹 스택입니다. 초기에 BSD 스택에서 갈라져 나왔으며, 깔끔한 인터페이스 집합으로 제대로 조직화되어 있습니다. 지원 인터페이스는 공통 소켓 층 인터페이스나 드라이버 층과 같은 프로토콜 중립 층부터 시작해서 구체적인 개별 네트워크 프로토콜 인터페이스까지 범위가 다양합니다. 이 기사에서는 리눅스 네트워킹 스택 구조를 계층 관점에서 살펴보며, 몇몇 주요 자료 구조 또한 검토합니다. |
|
|
|
2008년 4월 22일 (화) |
|
| |
LAMP 시스템 조율, Part 1: LAMP 아키텍처 이해 (한글) LAMP(Linux, Apache, MySQL, PHP/Perl) 아키텍처를 활용하는 응용 프로그램이 끊임없이 개발되고 배포되고 있습니다. 하지만 때로 다른 사람이 작성했다는 이유만으로 응용 프로그램 자체에 대한 통제권이 서버 관리자에게는 없습니다. 기사 셋으로 이뤄진 이번 연재물은 응용 프로그램 성능을 향상시킬 서버 환경 설정 항목을 다룹니다. 첫 번째 기사는 LAMP 아키텍처, 성능 기법, 기본적인 리눅스 커널, 디스크, 파일 시스템 미조정을 다룹니다. 이어지는 기사에서는 아파치, MySQL, PHP 컴포넌트를 조율하는 방법을 다룹니다. |
|
|
|
2008년 4월 22일 (화) |
|
| |
C/C++ 프로젝트에 사용할 메모리 관리자 직접 구현하기 (한글)
프로그래밍에서 성능 최적화는 중대한 사안입니다. 동작은 올바르지만 메모리나 시간, 가장 나쁘게 둘 다를 너무
많이 잡아 먹는 C/C++ 프로그램이 생각보다 흔합니다. C/C++는 코드에서 메모리를 할당하고 해제하는
방식을 개발자가 완전히 통제할 수 있다는 측면에서 프로그램 성능을 향상시킬 무한한 가능성을 제시합니다. 이
튜토리얼에서는 특정 환경을 위한 메모리 관리자를 직접 구현해 보면서 메모리 관리를 둘러싼 미신을 깨겠습니다.
|
|
|
|
2008년 4월 15일 (화) |
|
| |
C/C++ 프로젝트에 사용할 메모리 관리자 직접 구현하기 (한글)
프로그래밍에서 성능 최적화는 중대한 사안입니다. 동작은 올바르지만 메모리나 시간, 가장 나쁘게 둘 다를 너무
많이 잡아 먹는 C/C++ 프로그램이 생각보다 흔합니다. C/C++는 코드에서 메모리를 할당하고 해제하는
방식을 개발자가 완전히 통제할 수 있다는 측면에서 프로그램 성능을 향상시킬 무한한 가능성을 제시합니다. 이
튜토리얼에서는 특정 환경을 위한 메모리 관리자를 직접 구현해 보면서 메모리 관리를 둘러싼 미신을 깨겠습니다.
|
|
|
|
2008년 4월 15일 (화) |
|
| |
C/C++ 프로젝트에 사용할 메모리 관리자 직접 구현하기 (한글)
프로그래밍에서 성능 최적화는 중대한 사안입니다. 동작은 올바르지만 메모리나 시간, 가장 나쁘게 둘 다를 너무
많이 잡아 먹는 C/C++ 프로그램이 생각보다 흔합니다. C/C++는 코드에서 메모리를 할당하고 해제하는
방식을 개발자가 완전히 통제할 수 있다는 측면에서 프로그램 성능을 향상시킬 무한한 가능성을 제시합니다. 이
튜토리얼에서는 특정 환경을 위한 메모리 관리자를 직접 구현해 보면서 메모리 관리를 둘러싼 미신을 깨겠습니다.
|
|
|
|
2008년 4월 15일 (화) |
|
| |
리눅스 슬랩 할당자 분석
좋은 운영체제 성능은 어느 정도 효율적인 메모리 자원 관리 능력에 달려있습니다. 과거에는 힙 메모리 관리가
일반적이었지만, 단편화와 메모리 수집으로 인해 성능 저하가 일어났습니다. 오늘날 리눅스 커널은 솔라리스에서
시작해 임베디드 시스템에도 오래동안 적용된, 메모리를 크기에 기반을 둔 객체로 취급하는 방법을 사용합니다.
이 기사는 슬랩 할당자 이면에 숨겨진 사상을 살펴보고 인터페이스와 활용 방안을 검토합니다.
|
|
|
|
2008년 4월 15일 (화) |
|
| |
CFS로 다중 프로세스 관리하기 (한글) 리눅스 커널 2.6.23에는 모듈화된 스케줄러 코어와 스케줄링 모듈로 구현된 CFS(Completely Fair Scheduler)가 탑재되어 있습니다. 이 기사에서는 CFS의 주요 기능을 다루며, 동작 원리를 살펴보고, 2.6.24 버전에 기대하는 몇 가지 변화를 미리 짚어보기로 합니다. |
|
|
|
2008년 4월 8일 (화) |
|
| |
리눅스 커널 분석 리눅스 커널은 거대하고 복잡한 운영체제의 핵심이며, 커다란 몸집에도 불구하고 하위 시스템과 계층 구조를 사용해서 조직화되어 있습니다. 이 기사에서는 리눅스 커널의 일반적인 구조를 살펴보고 주요 하위 시스템과 핵심 인터페이스를 파악합니다. 좀더 깊이 파고 들고 싶다면 다른 IBM 기사를 읽어보세요. |
|
|
|
2008년 4월 1일 (화) |
|
| |
OLPC 랩톱 애플리케이션 개발 (한글) "모든 어린이에게 컴퓨터를" 재단(One-Laptop-Per-Child initiative)에서 만든 XO 랩톱은 전세계 어린이 교육을 돕기 위해 저렴한 컴퓨터를 만들어 보자는 프로젝트의 산물입니다. 이 컴퓨터에는 여러 가지 혁신적인 요소가 많이 들어가 있습니다. 하드웨어 설계도 독창적이면서도 값싸고 튼튼하며 기반 운영체제로 GNU/Linux를 씁니다. 또, 파이썬으로 만든 애플리케이션 환경도 있는데 Sugar라고 부르며 어린이들을 포함한 모든 사람이 쉽게 쓸 수 있도록 만들었습니다. Sugar의 API를 탐험하면서 파이썬으로 어떻게 그래픽 액티비티(activity)를 개발하고 디버그하는지를 살펴보겠습니다. |
|
|
|
2008년 3월 25일 (화) |
|
| |
OLPC 랩톱 애플리케이션 개발 (한글) "모든 어린이에게 컴퓨터를" 재단(One-Laptop-Per-Child initiative)에서 만든 XO 랩톱은 전세계 어린이 교육을 돕기 위해 저렴한 컴퓨터를 만들어 보자는 프로젝트의 산물입니다. 이 컴퓨터에는 여러 가지 혁신적인 요소가 많이 들어가 있습니다. 하드웨어 설계도 독창적이면서도 값싸고 튼튼하며 기반 운영체제로 GNU/Linux를 씁니다. 또, 파이썬으로 만든 애플리케이션 환경도 있는데 Sugar라고 부르며 어린이들을 포함한 모든 사람이 쉽게 쓸 수 있도록 만들었습니다. Sugar의 API를 탐험하면서 파이썬으로 어떻게 그래픽 액티비티(activity)를 개발하고 디버그하는지를 살펴보겠습니다. |
|
|
|
2008년 3월 25일 (화) |
|
| |
리눅스 팁: 리눅스 팁: cron과 at를 사용한 작업 일정 관리 (한글) 시스템 사용량이 적어진 한밤중에 작업을 실행할 필요가 있거나 일일이나 주간 단위로 작업을 수행할 필요가 있지만, 잠도 자야겠고 다른 활동도 하면서 삶을 즐기고 싶습니다. 작업 일정 관리가 필요한 또 다른 좋은 이유는 반복적인 과업을 자동으로 수행하도록 만들거나 매번 동일한 방식으로 과업을 수행하도록 만들고 싶기 때문입니다. 여기서 소개하는 팁은 주기적으로나 일회성으로 미래 작업 일정을 관리하는 cron과 at 기능을 활용하도록 도와줍니다. |
|
|
|
2008년 3월 25일 (화) |
|
| |
리눅스 어셈블러: GAS와 NASM 비교 (한글) 이번 기사에서는 리눅스에서 가장 인기 있는 어셈블러인 GNU 어셈블러(GAS)와 넷와이드 어셈블러(NASM) 사이에 나타나는 중요한 구문과 의미 차이를 설명합니다. 기본 구문, 변수, 메모리 접근, 매크로 처리, 함수와 외부 루틴, 스택 처리, 반복되는 코드 블록을 쉽게 처리하는 기법에 대한 내용이 포함되어 있습니다. |
|
|
|
2008년 3월 18일 (화) |
|
| |
리눅스 SCSI 하위 시스템 분석 SCSI(Small Computer System Interface)는 (주로 저장 장치와 관련된) 상당히 많은 종류의 디바이스와 통신하도록 인터페이스와 프로로콜을 정의한 표준 모음입니다. 리눅스는 이런 디바이스와 통신을 허용하기 위해 SCSI 하위 시스템을 제공합니다. 리눅스는 CD-ROM 드라이버와 같은 고차원 드라이버에서 시작해 광 채널이나 직렬 연결 SCSI(SAS)와 같은 물리적인 인터페이스에 이르기까지 다양한 장비를 아우르는 계층화된 아키텍처라는 좋은 예를 보여줍니다. 이 기사에서는 리눅스 SCSI 하위 시스템을 소개하고 하위 시스템 발전 방향에 대해 논의합니다. |
|
|
|
2008년 3월 4일 (화) |
|
| |
SELinux의 역할 기반 액세스 컨트롤 SELinux의 RBAC을 작동하는 방법과, SELinux 정책, 커널, 사용자 공간이 어떻게 RBAC를 실행하고, 리눅스 사용자들을 TE 정책과 연결하는지를 알아봅시다. |
|
|
|
2008년 2월 26일 (화) |
|
| |
Lazy 프로그래밍과 Lazy 계산 (한글) Lazy 프로그래밍은 결과가 필요할 때까지 함수 또는 요청의 처리를 지연시키는 개념입니다. 이러한 개념은 많은 곳에 적용할 수 있습니다. Lazy 프로그래밍 관점에서 생각하면 불필요한 연산 코드를 제거할 수 있고, 문제 지향적인 프로그램으로 재구현 할 수 있습니다. |
|
|
|
2008년 2월 19일 (화) |
|
| |
GPFS 클러스터를 위한 SNMP 기반 모니터링 Simple Network Management Protocol (SNMP) 데이터를 원격에서 분석함으로써 General Parallel File System의 상태를 점검할 수 있습니다. 설정 방법을 단계별로 설명합니다. |
|
|
|
2008년 2월 4일 (월) |
|
| |
고성능 서버에서의 네트워킹 확장성 멀티 노드, 고성능 리눅스 환경에서 네트워킹 성능을 최적화 하여 확장성을 이룩하는 방법을 배워봅시다. |
|
|
|
2008년 1월 29일 (화) |
|
| |
Completely Fair Scheduler를 이용한 멀티 프로세싱 다중 태스크들을 동일한 속도로 실행시킴으로써 완벽한 동일성을 추구하는 리눅스 커널의 새로운 CFS를 만나봅시다. |
|
|
|
2008년 1월 15일 (화) |
|
| |
Linux on board: Nokia N800 카메라에 액세스 하기 GStreamer를 사용하여 카메라 애플리케이션을 구현하여 Nokia N800 장치의 Webcam에 액세스 합니다. |
|
|
|
2008년 1월 8일 (화) |
|
| |
Linux on board: Nokia N800 사진 자동 업로딩 유연한 N800용 Webcam 애플리케이션을 개발해 봅시다. 마지막 글에서는 저장된 JPEG 이미지를 네트워크를 통해 업로드 하는 방법을 설명합니다. |
|
|
|
2007년 12월 18일 (화) |
|
| |
Eclipse Platform에서의 C/C++ 개발 C/C++ 개발 프로젝트에서 Eclipse Platform을 사용하는 방법을 설명합니다. Eclipse는 주로 자바 개발 환경이지만, 다른 프로그래밍 언어들도 지원합니다. 이 글에서, Eclipse에 사용할 수 있는 최상의 C/C++ 툴킷인 C/C++ Development Toolkit (CDT)을 사용하는 방법을 설명합니다. |
|
|
|
2007년 12월 11일 (화) |
|
| |
Linux on board: Nokia N800 개발 Get a programmer's introduction to the Nokia N800 다목적 타블릿을 소개하고, 빌드 환경을 설정 및 테스트 하여 빌트인 카메라를 사용하여 Webcam 애플리케이션을 구현합니다. |
|
|
|
2007년 12월 4일 (화) |
|
| |
리눅스의 x86 용 인라인 어셈블리(Inline assembly) (한글) Bharata B. Rao는 리눅스 플랫폼 상에서 x86용 인라인 어셈블리의 사용법과 구조를 설명합니다. 인라인 어셈블리의 기초와 다양한 사용법을 설명하고, 기본적인 인라인 어셈블리 코딩 가이드도 제시하며, 리눅스 커널에서 인라인 어셈블리 코드의 인스턴스도 설명합니다. |
|
|
|
2007년 11월 27일 (화) |
|
| |
POSIX 파일 기능: 루트(root) 권한 나누기 부분적인 권한을 분배하는 것은 리눅스 같은 멀티유저 시스템에서는 매우 유용합니다. POSIX 파일 기능을 사용하여 루트 권한을 더 많은 사용자들에게 안전하게 제공합니다. |
|
|
|
2007년 10월 23일 (화) |
|
| |
더욱 이해하기 쉬운 코드를 작성하는 여섯 가지 방법 (한글) 개발자로서, 시간은 가장 가치 있는 자산이다. 관리가 가능한 코드를 작성하는 방법에 대한 여섯 가지 팁을 배우면 시간을 절약할 수 있고 좌절감에서 극복할 수 있습니다. 주석을 작성하는데 1분만 투자하면, 1시간 동안 분노에 떨지 않아도 됩니다. |
|
|
|
2007년 10월 23일 (화) |
|
| |
재 코딩(recoding) 영향 최소화 하기, Part 2: 빠른 성능의 장애물 제거하기 DMA 전송 사이즈에 기반한 제한 사항 제거하기, 다중 SPE에 프로그램 파티셔닝 하기, 프로그램의 속도를 높이는 방법을 설명합니다. |
|
|
|
2007년 10월 23일 (화) |
|
| |
IBM Installation Toolkit: Linux on POWER 로딩하기 IBM Installation Toolkit은 가상화/비 가상화 Power 머신 기반 리눅스의 설치를 단순화 하며, 부팅 가능한 DVD를 제공하고, Power 플랫폼을 완전히 활용하는데 필요한 소프트웨어를 제공합니다. |
|
|
|
2007년 10월 16일 (화) |
|
| |
Python의 메타클래스 프로그래밍, Part 3 똑똑한 프로그래머는 너무 많은 트릭을 알고 있습니다. 하지만 진정한 고수는 지나친 똑똑함이 프로젝트를 어지럽힌다는 것을 알고 있습니다. 고수가 되는 법을 배워봅시다. |
|
|
|
2007년 10월 9일 (화) |
|
| |
PS3 fab-to-lab, Part 2: 시그널 생성 및 분석 PS3에서 Cell/B.E를 사용하여 리눅스 기반 오디오 대역 스팩트럼 애널라이저와 함수 제너레이터를 구현합니다. |
|
|
|
2007년 10월 9일 (화) |
|
| |
OpenSSL API를 이용한 보안 프로그래밍, Part 3: 보안 서비스 제공하기 (한글) 보안 서버 애플리케이션이 없이는, 보안 클라이언트 애플리케이션도 존재하지 않습니다. OpenSSL을 사용하여 보안 서버 애플리케이션들을 생성할 수 있고, 문서화가 완전하지 않아도 어렵지는 않습니다. 본 시리즈 Part 1에서 설명한 개념을 기반으로 보안 서버 애플리케이션을 구현하는 방법을 배워봅시다. |
|
|
|
2007년 10월 2일 (화) |
|
| |
리눅스 철통 보안, Part 2: 서명된 바이너리만 실행하기 기술을 잘 아는 사용자든 모르는 사용자든 그 사람들을 위해 설치된 수많은 리눅스 머신을 유지보수한다는 것은 비참한 경험입니다. 기술을 잘 아는 사용자는 자기가 좋아하는 대로 최대한 설정할 수 있는 Linux의 장점을 누리겠지만 기술을 잘 모르는 사용자는 자기에게 주어진 파일 시스템 안에서 여러 가지 하지 말아야 할 조작을 합니다. 관련 지원과 관리 프로세스를 합리적으로 만들 수 있게 리눅스 머신 보안 강화 방안을 다루는 연재의 두 번째 부분인 본 튜토리얼에서는 서명된 바이너리만 실행하도록 리눅스 커널을 설정하는 방법을 배웁니다. |
|
|
|
2007년 9월 18일 (화) |
|
| |
리눅스 철통 보안, Part 2: 서명된 바이너리만 실행하기 기술을 잘 아는 사용자든 모르는 사용자든 그 사람들을 위해 설치된 수많은 리눅스 머신을 유지보수한다는 것은 비참한 경험입니다. 기술을 잘 아는 사용자는 자기가 좋아하는 대로 최대한 설정할 수 있는 Linux의 장점을 누리겠지만 기술을 잘 모르는 사용자는 자기에게 주어진 파일 시스템 안에서 여러 가지 하지 말아야 할 조작을 합니다. 관련 지원과 관리 프로세스를 합리적으로 만들 수 있게 리눅스 머신 보안 강화 방안을 다루는 연재의 두 번째 부분인 본 튜토리얼에서는 서명된 바이너리만 실행하도록 리눅스 커널을 설정하는 방법을 배웁니다. |
|
|
|
2007년 9월 18일 (화) |
|
| |
논리적 볼륨 관리 논리적 볼륨 관리 장치를 제공하는 새로운 사용자 공간 툴 세트인 LVM2의 유용한 기능을 소개하고, 시스템 관리 태스크를 단순화 하는 여러 방법들을 제안합니다. |
|
|
|
2007년 9월 18일 (화) |
|
| |
OpenSSL API를 이용한 보안 프로그래밍, Part 2: 안전한 핸드쉐이크(handshake) (한글) Secure Sockets Layer (SSL) 세션 중에 핸드쉐이크(handshake)를 보안화 하는 것은 중요합니다. 이 연결에 개입된 모든 보안들이 핸드쉐이크 내부에서 설정되기 때문입니다. 믿을 수 있는 소스인 것처럼 가장하여 침입하는 man in the middle (MITM) 공격에서 SSL 핸드쉐이크를 보안화 하는 방법을 배워봅시다. 디지털 인증서 개념과 OpenSSL API가 이들을 다루는 방법도 설명합니다. |
|
|
|
2007년 9월 18일 (화) |
|
| |
WebSphere Business Services Fabric과 SEEC의 컴포넌트 사용하기 SEEC, Inc.의 컴포넌트와 WebSphere Business Services Fabric을 사용하여, 어떤 코드도 작성하지 않고 엔드포인트를 동적으로 선택하고 프론트엔드 애플리케이션 서비스를 동적으로 구성합니다. |
|
|
|
2007년 9월 18일 (화) |
|
| |
Charming Python: Python의 두 얼굴, Part 2 애트리뷰트와 메소드부터 디스크립터와 프로퍼티까지, 황금기의 Python 1.5.2부터 현재까지의 Python의 변화를 설명합니다. |
|
|
|
2007년 9월 11일 (화) |
|
| |
재 코딩(recoding) 영향 최소화 하기, Part 1: SPE와 기존 코드를 함께 작동시키는 방법 기본 코드에서 Synergistic Processor Elements (SPE)를 사용하는 방법과 기존 코드와 빌드 프로세스에 최소한의 영향만 미치는 방법을 설명합니다. |
|
|
|
2007년 9월 11일 (화) |
|
| |
OpenSSL API를 이용한 보안 프로그래밍, Part 1: API의 개요 (한글) 보안 통신용 오픈 라이브러리인 OpenSSL용 API를 사용하는 방법을 배운다는 것은 힘든 일입니다. 문서화가 아직 덜 되어있기 때문입니다. 이 글을 통해서 이를 극복해 봅시다. 기본 연결을 설정한 후에, OpenSSL의 BIO 라이브러리를 사용하여 보안/비보안 연결을 구축하는 방법을 배워봅시다. 에러 탐지에 대한 부분도 설명합니다. |
|
|
|
2007년 8월 28일 (화) |
|
| |
5단계로 간편하게 완료되는 웹 서버 클러스터 설치 Linux Virtual
Server와 Heartbeat v2를 사용하여 간단한 5단계 과정만으로 여러 물리적 또는 가상 Linux 서버를
기반으로 하는 고가용성 Apache 웹 서버 클러스터를 구축합니다. |
|
|
|
2007년 8월 22일 (수) |
|
| |
Sugar, XO 랩톱, One Laptop per Child (한글) One Laptop per Child (OLPC)는 전 세계 어린이들에게 컴퓨터를 보급하기 위해 소프트웨어를 비롯한 저렴한 랩톱(USD100)을 개발하는 기구입니다. 이 장치는 아이들을 대상으로 하기 때문에, 아이들이 표현과 교육을 위한 툴을 경험할 수 있도록 고급스러운 사용자 인터페이스와 애플리케이션을 제공해야 합니다. OLPC용 OS는 리눅스 커널의 포트이지만, Sugar라고 하는 고유의 인터페이스도 갖고 있습니다. 이 글에서, Sugar 휴먼 인터페이스, QEMU를 사용하여 표준 PC 상에서 OLPC 랩톱을 가상화 하는 방법, Sugar와 OLPC 기능을 설명합니다. |
|
|
|
2007년 8월 7일 (화) |
|
| |
리눅스 팁: 스케쥴링된 작업의 지속 기간 제어하기 한밤중에 30분 동안 어떤 문제를 추적하는 귀찮은 문제를 디버깅할 필요가 있다고 가정해 봅시다. 그렇다면 바로 알람 시계로 리눅스 시스템을 사용하고 싶을 것입니다. 이 팁은 여러분이 cron과 at 같은 기능을 갖고 시작되고 어떤 시간 동안 작업이 동작한 후 또는 어떤 다른 조건을 충족했을 때 작업을 멈추는 데 도움을 줄 것입니다. |
|
|
|
2007년 7월 31일 (화) |
|
| |
Changes in libspe: libspe2가 Cell Broadband Engine 프로그래밍에 미치는 영향 (영문) Cell Broadband Engine (Cell/B.E.) SDK 2.1은 공식적으로 libspe1에서 libspe2로 라이브러리 인스턴스를 변경했습니다. 이 글에서, libspe2 개념을 소개하고, 기본적인 SPE 프로세스 관리와 통신 방법을 설명합니다. |
|
|
|
2007년 7월 24일 (화) |
|
| |
경량 웹 서버 Apache와 IIS는 웹 서버 시장을 선도하고 있지만, 더 작고 민첩한 경쟁자들이 성능과 보안성을 무기로 대두되고 있습니다. |
|
|
|
2007년 7월 18일 (수) |
|
| |
DB2와 오픈 소스, Part 2: Google Maps API Version 2, DB2/Informix, PHP, JMeter on Linux 활용하기 Google의 Maps API Version 2를 사용하여 Part 1에서 설명했던 기본적인 매시업 개발에서 한 발 나아가 DB2 또는 IDS에서 PHP 스크립트의 코드 라인을 줄여봅시다. |
|
|
|
2007년 7월 10일 (화) |
|
| |
ActiveScaffold로 Ruby on Rails 강화하기 (한글) Ruby on Rails ActiveScaffold 플러그인을 사용하여 보다 쉽게 관리할 수 있는 페이지를 만들어 봅시다. ActiveScaffold는 모든 CRUD (create, read, update, delete) 사용자 인터페이스를 다루기 때문에, 여러분은 보다 도전적인(그리고 흥미있는) 문제에 더 많은 시간을 투자할 수 있습니다. |
|
|
|
2007년 7월 3일 (화) |
|
| |
리눅스 철통 보안, Part 1: 셸 제거하기 기술을 잘 아는 사용자든 모르는 사용자든 그 사람들을 위해 설치된 수많은 리눅스 머신을 유지보수한다는 것은 비참한 경험입니다. 기술을 잘 아는 사용자는 자기가 좋아하는 대로 최대한 설정할 수 있는 리눅스의 장점을 누리겠지만 기술을 잘 모르는 사용자는 자기에게 주어진 파일 시스템 안에서 여러 가지 하지 말아야 할 조작을 합니다. 이 튜토리얼은 2회 연재의 첫회로 지원과 관리 프로세스를 효율적으로 하기 위해 리눅스 시스템의 보안을 강화하는 방법과 그 이유를 보여줍니다. 이 튜토리얼에서 여러분은 설치된 기본 시스템에서 인터프리터를 제거하는 방법을 배웁니다. |
|
|
|
2007년 6월 26일 (화) |
|
| |
리눅스 철통 보안, Part 1: 셸 제거하기 기술을 잘 아는 사용자든 모르는 사용자든 그 사람들을 위해 설치된 수많은 리눅스 머신을 유지보수한다는 것은 비참한 경험입니다. 기술을 잘 아는 사용자는 자기가 좋아하는 대로 최대한 설정할 수 있는 리눅스의 장점을 누리겠지만 기술을 잘 모르는 사용자는 자기에게 주어진 파일 시스템 안에서 여러 가지 하지 말아야 할 조작을 합니다. 이 튜토리얼은 2회 연재의 첫회로 지원과 관리 프로세스를 효율적으로 하기 위해 리눅스 시스템의 보안을 강화하는 방법과 그 이유를 보여줍니다. 이 튜토리얼에서 여러분은 설치된 기본 시스템에서 인터프리터를 제거하는 방법을 배웁니다. |
|
|
|
2007년 6월 26일 (화) |
|
| |
대형 리눅스 클러스터 설치하기, Part 4: 노드 설치와 GPFS 클러스터 설정 각 노드에 General Parallel File System (GPFS) 코드 설치, 스토리지 노드용 Qlogic 어댑터 설정하기 등, 스토리지 백엔드를 설정하는 후반 작업을 설명합니다. 마지막으로 GPFS 클러스터를 만드는 과정도 설명합니다. |
|
|
|
2007년 6월 26일 (화) |
|
| |
Cell BE 프로세서의 고성능 애플리케이션 프로그래밍, Part 3: Meet the synergistic processing unit (한글) Cell Broadband Engine (Cell BE) 프로세서의 Synergistic Processing Elements(SPE)를 연구하고 이들이 최하위 레벨에서 어떻게 작동하는지를 배워봅시다. SPE의 스토리지 정렬 문제와 통신 장치를 설명합니다. |
|
|
|
2007년 6월 26일 (화) |
|
| |
Second Life 클라이언트, Part 2: 문서화 프로젝트의 성패는 문서화에 달려있기 때문에 Second Life 클라이언트가 이 부분을 어떻게 다루는지 배울 필요가 있습니다. |
|
|
|
2007년 6월 12일 (화) |
|
| |
리눅스와 시메트릭 멀티프로세싱(symmetric multiprocessing) (한글) 주요 CPU 벤더들에 의해 입증되었듯이, 멀티 코어 프로세서들이 데스크탑과 임베디드 분야를 주도하고 있습니다. 멀티프로세싱(multiprocessing)은 월등한 성능을 보이지만, 새로운 문제점도 갖고 있습니다. 이 글에서 멀티프로세싱의 개념과, SMP를 활용하는 리눅스용 애플리케이션 개발에 대해 설명합니다. |
|
|
|
2007년 5월 29일 (화) |
|
| |
Graphviz를 이용하여 함수 호출을 그림으로 나타내기 (한글) 많은 소스 코드로 작업하다 보면 함수의 흐름을 파악할 수 있지만, 함수 포인터가 개입되거나 코드가 길거나 얽히게 되면, 프로세스는 상당히 어려워집니다. 이 글에서는 오픈 소스 소프트웨어와 커스텀 글루(glue) 코드를 사용하여 동적인 그래픽 함수 호출을 구현하는 방법을 설명합니다. |
|
|
|
2007년 5월 29일 (화) |
|
| |
PS3 fab-to-lab, Part 1: Sony PLAYSTATION 3에서 리눅스 실험 장비 구현하기 PS3의 Cell/B.E. 칩으로 리눅스 기반 오디오-대역폭 스팩트럼 애널라이저와 펑션 제너레이터를 구현합니다. |
|
|
|
2007년 5월 22일 (화) |
|
| |
General Parallel File System을 사용하여 멀티클러스터 환경 설정하기 General Parallel File System (GPFS)을 사용하여 System x와 System p 컴퓨터의 멀티클러스터를 구현하는 방법을 배워봅시다. |
|
|
|
2007년 5월 22일 (화) |
|
| |
Cell BE 프로세서의 고성능 애플리케이션 프로그래밍, Part 2: Sony PLAYSTATION 3의 Synergistic Processing Elements 프로그래밍 (한글) Cell BE 프로세서의 고성능 애플리케이션 프로그래밍 시리즈를 통해 Sony PLAYSTATION 3의 Synergistic Processing Elements를 활용하는 방법을 설명하고 있습니다. Part 1에서는 PS3에 리눅스를 설치하는 방법과 간단한 예제 프로그램을 설명했습니다. Part 2에서는 Cell Broadband Engine 프로세서의 SPE를 자세히 살펴보고, 이러한 엘리먼트들이 어떻게 작동하는지를 설명합니다. |
|
|
|
2007년 5월 22일 (화) |
|
| |
대형 리눅스 클러스터 설치하기, Part 3: 스토리지와 공유 파일 시스템 스토리지 아키텍처, 필요한 하드웨어, Storage Area Network을 포함하여 스토리지 백엔드 설정 방법을 설명합니다. |
|
|
|
2007년 5월 15일 (화) |
|
| |
리눅스 시스템 감사 예제 안전한 리눅스 시스템에 대해 생각하고 있습니까? 설치와 설정 과정에서 베스트 프랙티스를 따라가는 것은 필수이지만, 시스템 감사를 설정하지 않았다면 큰 것을 잃은 것입니다. |
|
|
|
2007년 5월 8일 (화) |
|
| |
Cell BE 프로세서의 고성능 애플리케이션 프로그래밍, Part 1: PLAYSTATION 3의 리눅스 (한글) Sony PLAYSTATION 3 (PS3)는 프로그래머가 새로운 Cell Broadband Engine (Cell BE) 프로세서를 접할 수 있는 가장 쉽고 저렴한 방법입니다. PS3에 리눅스를 설치하는 방법, PS3에서 Cell BE 프로세서를 기반으로 한 개발 방법을 설명합니다. |
|
|
|
2007년 5월 8일 (화) |
|
| |
POWER5에 수세 리눅스를 설정하여 성능 최대화 하기 SLES 10을 사용하여 IBM POWER5 시스템의 가상화 성능 문제들을 진단 및 해결합니다. |
|
|
|
2007년 5월 8일 (화) |
|
| |
Linux on POWER에서 Transparent Huge Page 활용하기 libhugetlbfs 라이브러리를 활용하고, 이들을 GCC 또는 IBM XL C/C++과 XL Fortran과 함께 사용하여 애플리케이션 성능을 높여봅시다. |
|
|
|
2007년 5월 2일 (수) |
|
| |
SoC drawer: Cell Broadband Engine 칩: 고속 오프로드 Cell/B.E. 칩은 SoC이고 Sony PLAYSTATION 3는 이것을 거실로 가져왔습니다. SoC drawer 칼럼에서 이 프로세스를 설명합니다. |
|
|
|
2007년 5월 2일 (수) |
|
| |
Cell BE 프로세서에서의 고성능 애플리케이션 프로그래밍, Part 6: DMA 트랜스퍼를 이용한 스마트 버퍼 관리 Jonathan Bartlett은 버퍼 관리에 대한 두 가지 기술을 소개합니다. |
|
|
|
2007년 4월 24일 (화) |
|
| |
POWER 기반 리눅스에서의 애플리케이션 개발 IBM System p와 System i POWER 플랫폼 기반 리눅스에서 애플리케이션을 전개 및 개발하는 방법은 다른 리눅스 플랫폼과 비슷합니다. |
|
|
|
2007년 4월 24일 (화) |
|
| |
coLinux를 이용한 가상화 (영문) 표준 리눅스 커널의 포트인 Cooperative Linux를 사용하여 Windows에서 리눅스를 실행하는 방법과 coLinux-스타일에 대해 설명합니다. |
|
|
|
2007년 4월 17일 (화) |
|
| |
리눅스에서 웹 스파이더(Web spider) 구현하기 (한글) 웹 스파이더(Web spider)는 인터넷을 크롤링 하며 정보를 수집하고, 필터링 하며, 사용자를 위한 정보를 한데 모으는 소프트웨어 에이전트입니다. 일반 스크립팅 언어와 웹 모듈을 사용하면 웹 스파이더를 쉽게 구현할 수 있습니다. 이 글에서는 리눅스용 스파이더와 스크래퍼를 구현하여 웹 사이트를 크롤링 하며 정보를 모으는 방법을 설명합니다. |
|
|
|
2007년 4월 17일 (화) |
|
| |
IBM Systems에 리눅스 서버 설치하기, Part 2: NFS-기반 네트워크 설치 메소드를 사용하여 다중 리눅스 서버 설치하기 System x와 Red Hat Enterprise Linux Version 4 환경에서 Network File Share (NFS)를 사용한 구성 및 설치 방법을 설명합니다. |
|
|
|
2007년 4월 17일 (화) |
|
| |
64-bit Linux의 Power Architecture Time Base 레지스터 Power Architecture의 Time Base 레지스터를 사용하여 Linux on PowerPC와 Cell Broadband Engine (Cell/B.E.) 마이크로프로세서에서 나노세컨드(10억분의 1초) 레벨로 시간을 측정합니다. |
|
|
|
2007년 4월 17일 (화) |
|
| |
Second Life 클라이언트, Part 1: Second Life 해킹 한 회사가 상용 소프트웨어를 오픈 소스 커뮤니티로 릴리스 한다면 어떤 일이 발생할까요? Second Life를 해킹하는 과정에서의 빌드 프로세스와 디딤돌이되는 부분과 장애물이 되는 부분에 대해 설명합니다. |
|
|
|
2007년 4월 10일 (화) |
|
| |
Power Architecture용 어셈블리 언어, Part 4: 함수 호출과 PowerPC 64-bit ABI PowerPC 어셈블리 언어 기술을 한 차원 더 높여서 다른 언어에서 호출될 수 있고 공유 라이브러리로 패키징 될 수 있는 함수들을 만들어 봅시다. |
|
|
|
2007년 4월 10일 (화) |
|
| |
Heath Robinson Rube Goldberg Computer, Part 4: 가상 캐비닛 전쟁 릴레이에서 부터 유체 논리(fluid logic) 등 혼합기술를 사용하여 컴퓨터를 구현하고 있는 프로젝트의 근황에 대해 알아봅시다. |
|
|
|
2007년 4월 3일 (화) |
|
| |
보다 빠른 리눅스 부팅을 위한 애플리케이션 병렬화 (한글) 개발자들이 리눅스에 대해 갖는 가장 큰 불만은 리눅스 부팅 속도입니다. 기본적으로, 리눅스는 클라이언트 데스크탑 또는 서버용으로 사용될 수 있는 범용 OS입니다. 리눅스의 유연성 덕택에, 광범위하게 사용되지만, 특정 구성에 맞춰 최적화 되지는 않습니다. 이 글에서는 리눅스 부팅 속도를 높일 수 있는 옵션들을 소개하고, 아울러 초기화 프로세스를 병렬화 하는 두 가지 옵션들도 소개합니다. 또한, 부팅 프로세스의 성능을 그래픽으로 나타내는 방법도 설명합니다. |
|
|
|
2007년 4월 3일 (화) |
|
| |
Cell BE 프로세서의 고성능 애플리케이션 프로그래밍, Part 5: C/C++로 SPU 프로그래밍하기 프로세서의 프로세싱 엘리먼트상에서 벡터 프로세싱을 위해 애플리케이션을 최적화 하는 SPE C/C++에 대해 배워봅시다. |
|
|
|
2007년 3월 27일 (화) |
|
| |
Power Architecture용 어셈블리 언어, Part 3: PowerPC 브랜치 프로세서를 이용한 프로그래밍 쉽게 결정 포인트를 만들 수 있는 명령어와 특별한 목적의 레지스터에 대해 배워봅시다. |
|
|
|
2007년 3월 27일 (화) |
|
| |
IBM Systems에 리눅스 서버 설치하기, Part 1: 리눅스 서버 설치와 설정 기초 IBM 독립 랙(rack) 서버에 Red Hat Enterprise Linux 4를 설치 및 설정하는 과정을 배워봅시다. |
|
|
|
2007년 3월 20일 (화) |
|
| |
Xilinx hijinx, Part 2: bitstream과 PowerPC 코드의 구현 및 로드 Virtex4 프로젝트의 하드웨어와 소프트웨어를 연구해 봅시다. Xilinx hijinx 시리즈의 마지막 시리즈에서는 프로젝트에서 디바이스 코어를 추가 및 제거하고, 프로젝트 컴포넌트를 연결하며, 비트스트림(bitstream)을 구현하여, 이것을 C 코드로 통합하고, 이 모든 것을 FPGA로 다운로드 할 것입니다. |
|
|
|
2007년 3월 13일 (화) |
|
| |
Fedora Live CD 구현하기 Fedora Linux는 대중적이고 성숙한 리눅스 배포판이고, 많은 사람들이 Fedora에 기반하여 Live CD 배포판을 구현했지만, Fedora 프로젝트 그 자체는 2006년 12월까지 공식적인 Live CD를 발표하지 않고 있습니다. Fedora Live CD 생성 툴인 Pilgrim을 사용하여 커스텀 Live CD를 구현하는 방법을 배워봅시다. |
|
|
|
2007년 3월 13일 (화) |
|
| |
대형 리눅스 클러스터 설치하기, Part 2: 관리 서버 구성과 노드 설치 리눅스 클러스터를 구현하는 두 번째 단계로 관리 서버를 구성하고 노드를 설치하는 방법을 설명합니다. |
|
|
|
2007년 2월 27일 (화) |
|
| |
리눅스 팁: Bash 테스트와 비교 기능 Bash 쉘의 테스팅과 비교 옵션이 헷갈립니까? 파일, 연산, 스트링 테스트를 다룰 수 있다면, test, [ ], [[ ]], (( )), if-then-else 구성체들을 사용할 시기도 알게 됩니다. |
|
|
|
2007년 2월 27일 (화) |
|
| |
초보자를 위한 유닉스 팁과 기교, Part 4: 알아두면 유용한 셸 기교 셸 프로그램을 작성하다 보면 자동으로 처리하고 싶은 상황이 가끔 생깁니다. 이 튜토리얼에서는 간단한 본(Bourne) 셸 스크립트로 이러한 상황을 처리하는 예제를 소개합니다. 구체적으로 (10진수를 16진수로, 16진수를 10진수로, 10진수를 8진수로 등) 진법 변환하기, 파이프로 연결한 루프에서 키보드 입력 읽기, 셸 안에서 셸 실행하기, 인라인 입력, 디렉터리 내 모든 파일에 명령을 한 번씩 실행하기, 여러 가지 방법으로 연속 루프 만들기 등을 살펴보겠습니다. 튜토리얼 마지막에는 알아두면 편리한 한 줄짜리 셸 스크립트 모음도 제공합니다. |
|
|
|
2007년 2월 20일 (화) |
|
| |
Portland로 리눅스 데스크탑 이식성 높이기 이종의 리눅스 데스크탑 환경에서 애플리케이션 전개를 단순화 하기 위해 설계된 Portland 프로젝트의 XdgUtils 툴셋을 소개합니다. |
|
|
|
2007년 2월 20일 (화) |
|
| |
가상 리눅스 가상화(Virtualization)는 사람들마다 그 의미도 다양합니다. 현재 가상화의 큰 초점은 서버 가상화 또는 단일 호스트 컴퓨터 상에 여러 개의 독립적인 OS를 호스팅하는 것에 맞춰져 있습니다. 이 글에서는 가상화 개념을 설명하고, 가상화를 실현하는 여러 가지 방법들을 논합니다. 또한, 리눅스 OS 가상화 같은 다양한 가상화 기술들을 살펴봅니다. |
|
|
|
2007년 2월 20일 (화) |
|
| |
리눅스 애플리케이션 서버 팜(farm)에서의 원격 컴퓨팅 SSL로 보안이 된 netbooting과 가상 네트워크 컴퓨팅으로 간단히 Foolproof를 만들 수 있습니다. |
|
|
|
2007년 2월 13일 (화) |
|
| |
휘파람을 불며 명령어 작동하기 (한글) 리눅스나 마이크로소프트 윈도우즈, 오픈 소스 sndpeek 프로그램, 간단한 Perl 스크립트를 사용하여 음성으로 컴퓨터를 제어할 수 있습니다. 휘파람, 콧노래, 노래소리를 이용해 그 소리의 강약에 따라 명령어를 작동할 수 있는 것입니다. 컴퓨터에 짧은 휘파람을 불어서 이메일을 확인하거나, 베토벤의 5번 교향곡으로 화면보호기를 해제하는 것. 생각만 해도 능률이 오를 것 같지 않나요? |
|
|
|
2007년 2월 6일 (화) |
|
| |
Xilinx hijinx, Part 1: ML403 사용 경험담 Lewin Edwards가 Xilinx ML403 Embedded Development Kit를 사용했던 경험을 여러분들과 함께 나눕니다. |
|
|
|
2007년 2월 6일 (화) |
|
| |
Charming Python: 데코레이터(Decorators) Python 식의 메타프로그래밍을 수행하는 방식 중, 최신 방식인 데코레이터(decorator)에 대해 알아봅시다. |
|
|
|
2007년 1월 23일 (화) |
|
| |
리눅스 프로젝트 간행물: 커널 (한글) 이 글에 소개한 간행물들은 IBM Linux Technology Center 멤버들이 작성한 것으로서, 커널 분야의 개발 커뮤니티를 위해 제공해 드립니다. |
|
|
|
2007년 1월 9일 (화) |
|
| |
리눅스용 데이터 시각화 툴 (한글) 리눅스에서 데이터를 그래픽으로 나타내는 애플리케이션들은, 간단한 2-D와 3-D, 과학적 그래픽 프로그래밍, 그래픽 시뮬레이션까지 다양합니다. 또한, gnuplot, GNU Octave, Scilab, MayaVi, Maxima, OpenDX 같은 오픈 소스도 있습니다. 자신의 애플리케이션에 가장 잘 맞는 오픈 소스 그래픽 시각화 툴에 대해 알아봅시다. |
|
|
|
2007년 1월 9일 (화) |
|
| |
IP 앨리어싱으로 싱글 네트워크 카드에 여러 Apache SSL 호스팅하기 하나의 서버에 사용도가 낮은 SSL 웹 사이트 여러 개를 호스팅 하도록 시스템을 설정해 봅시다. |
|
|
|
2006년 12월 28일 (목) |
|
| |
대형 리눅스 클러스터 설치하기, Part 1: 개요와 하드웨어 설정 System x와 IBM TotalStorage 시스템을 포함한 리눅스 클러스터를 만들어봅시다. 우선, 하드웨어 설정 방법부터 설명합니다. |
|
|
|
2006년 12월 21일 (목) |
|
| |
Linux on POWER에 IBM XL C/C++ Advanced Edition V8.0 사용하는 방법 GNU gcc/g++ 사용자들에게, POWER4, POWER5, PowerPC 970, POWER5+ 프로세서를 활용하는 방법을 설명합니다. |
|
|
|
2006년 12월 21일 (목) |
|
| |
Power Architecture용 어셈블리 언어, Part 2: PowerPC에서의 로딩과 저장 기술 빠른 실행 또는 직접적인 하드웨어 액세스를 위해서라면 어셈블리 언어만한 것이 없습니다. 메모리 어드레싱을 조정하고, 위치 독립적인 코드를 작성하는 방법을 배워봅시다. |
|
|
|
2006년 12월 14일 (목) |
|
| |
Linux on board: 리눅스 기반 Nokia 770 Nokia 770의 고급 개발 환경은 핸드헬드 프로젝트의 매력적인 타겟입니다. |
|
|
|
2006년 12월 7일 (목) |
|
| |
Apache Proxy의 명령어 (mod_proxy)를 사용한 LAMP 보안 향상 (영문) Apache의 mod_proxy를 사용하여 LAMP 보안성을 크게 향상시킬 수 있습니다. |
|
|
|
2006년 12월 7일 (목) |
|
| |
초보자를 위한 유닉스 팁과 기교, Part 3: 필터와 정규 표현식 이 튜토리얼에서는 강력한 기능을 자랑하는 유닉스 필터를 익힙니다. grep 계열 명령을 상세히 살펴보고, 많은 유닉스 유틸리티에서 사용하는 정규 표현식도 익힙니다. 또한 예제와 설명을 곁들여 스트림 편집기인 sed, 패턴 인식 언어인 awk도 설명합니다. |
|
|
|
2006년 12월 5일 (화) |
|
| |
리눅스 버전 컨트롤 (한글) 버전 컨트롤 시스템 또는 소스 관리 시스템은 현대 소프트웨어 개발의 중요한 측면입니다. CVS, Subversion, Arch, Git를 비롯하여, Software Configuration Management (SCM) 시스템과, 그 효과에 대해 설명합니다. |
|
|
|
2006년 12월 5일 (화) |
|
| |
GNU Linear Programming Kit, Part 3: 난해한 문제와 고급 솔루션 본 툴킷을 사용하여 복잡한 문제에 대한 최적의 솔루션을 찾아봅시다. |
|
|
|
2006년 11월 30일 (목) |
|
| |
머신에서 만들어진 음악으로 리눅스 컴퓨터 모니터링 하기 컴퓨터가 어떤 일을 하고 있는지 듣고 싶습니까? FluidSynth와 Perl을 사용하여 리눅스 컴퓨터의 다양한 매개변수들의 상태를 나타내는 간단한 음조 합성물을 구현해 봅시다. |
|
|
|
2006년 11월 23일 (목) |
|
| |
Linux ThinkPad의 새로운 변화 커널 패닉 동안 자동으로 리눅스 랩톱을 리셋 하도록 커널을 수정하여 첨단 인터페이스를 경험해봅시다. |
|
|
|
2006년 11월 16일 (목) |
|
| |
Charming Python: Hatch Python과 setuptools distutils의 단점 때문에 고생하고 있다면, setuptools를 검토해 봅시다. |
|
|
|
2006년 11월 16일 (목) |
|
| |
WebSphere for Linux on IBM System z: FAQ FAQ를 통해 64-bit 리눅스, JDBC 드라이버, 힙 사이즈, CPU에 대해 알아봅니다. |
|
|
|
2006년 11월 16일 (목) |
|
| |
Power Architecture용 어셈블리 언어, Part 1: 프로그래밍 개념과 PowerPC 시작하기 어셈블리 언어를 사용하는 것만큼 프로세서를 이해할 수 있는 좋은 장치는 없습니다. 지급 시작해봅시다. |
|
|
|
2006년 11월 2일 (목) |
|
| |
make 디버깅 makefile을 만들 때 흔히 저지를 수 있는 실수들을 피하고, 다양한 make 유틸리티들 간 이식성 문제를 연구합니다. |
|
|
|
2006년 11월 2일 (목) |
|
| |
m17n을 사용하여 코드 포팅하기 이식성 있는 사용자 인터페이스에서 여러 언어들을 정확히 렌더링 하는 솔루션을 제공하는 라이브러리인 m17n에 대해 알아봅시다. |
|
|
|
2006년 10월 26일 (목) |
|
| |
Common threads: sed 예제, Part 1 (한글) 매우 강력한(하지만 자주 잊혀지는) 유닉스 스트림 에디터인 sed의 사용 방법을 설명한다.
sed는 쉘 스크립트를 사용하여 파일의 일괄 편집이나 기존 파일들을 변경하기에 이상적인 툴이다. |
|
|
|
2006년 10월 19일 (목) |
|
| |
객체 비지향(object disoriented)을 위한 공유 객체 (한글) 동적으로 로드가 가능한 라이브러리를 작성하는 방법과 프로세스에 사용할 수 있는 툴을 설명한다. |
|
|
|
2006년 10월 19일 (목) |
|
| |
팁: cat을 이용한 파일 연결 (한글) GNU 텍스트 유틸리티 시리즈! 이번에는, 유닉스 사용자들에게 너무나도 특별한 존재인 cat에 대해 알아본다. |
|
|
|
2006년 10월 19일 (목) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드, Part 5 (한글) Linux 2.4에는 Reiserfs, XFS, GFS와 같은 새로운 파일시스템 기능이 추가되었다. 파일시스템은 좋은 것이긴 하지만 실제 생산환경에 적용하는 방법에 대해서는 정확히 모르고 있는 것도 사실이다. 이 시리즈를 통해 필자는 Linux 2.4에 새롭게 향상된 파일시스템을 설치하는 과정을 설명한다. 이번에는 devfs를 시스템에 실행시키기 위한 준비 작업에 대해 설명한다. |
|
|
|
2006년 10월 10일 (화) |
|
| |
OpenPower, Part 1: POWER5상의 64-BIT 개발 64-bit 시스템에서 코드가 실행되고 있는지의 여부가 궁금하십니까? 돈을 지불하기 전에 먼저 규명하고 싶으십니까? 본 시리즈에서 그 방법을 설명합니다. |
|
|
|
2006년 10월 9일 (월) |
|
| |
완벽한 네트워크 액세스를 보장하는 NFSv4 이종의 네트워크 환경을 최적화 할 방법을 모색하는 관리자를 위해 분산 파일 시스템을 자세히 연구합니다. |
|
|
|
2006년 9월 28일 (목) |
|
| |
TAMS 3011 테스트 및 평가, Part 6: 새로운 하드웨어에서 NetBSD 부팅하기 Peter Seebach는 NetBSD를 TAMS 3011로 포팅하는 방법을 설명합니다. |
|
|
|
2006년 9월 28일 (목) |
|
| |
서버 운영 체제로서의 Linux (한글) Linux는 Windows NT를 대신해서 서버 시장을 주도할 준비가 되어있다. 선택은 사용자에게 달려 있다. 사용자는 저렴하고 유연성이 있으며 확장성 및 신뢰성이 보장되는 서버 솔루션을 원한다. 마이크로컴퓨터 기반의 네트워크 서버인 Novell NetWare가 쇠퇴하고 Microsoft Windows NT가 중소 기업 시장을 석권하고 있다. 이 글을 통해 Linux가 NT를 능가할 수 있는 방법을 모색하고 Linux가 NT의 대안으로 선택된 이유를 알아보자. |
|
|
|
2006년 9월 22일 (금) |
|
| |
GNU Linear Programming Kit, Part 2: 리니어 프로그래밍의 문제 리니어 프로그래밍 기술과 GNU Linear Programming Kit을 사용하여 비즈니스 연산을 최적화 해봅시다. |
|
|
|
2006년 9월 21일 (목) |
|
| |
오픈 소스 로봇 툴킷 소프트봇(softbot)이든 하드웨어 로봇이든 리눅스는 이들을 구현하기에 이상적입니다. |
|
|
|
2006년 9월 14일 (목) |
|
| |
LPI exam 101 prep: 장치, 리눅스 파일시스템, Filesystem Hierarchy Standard (한글) 이 단계까지 올라온 여러분들을 환영합니다. 본 튜토리얼 시리즈는 여러분이 자신감을 갖고 시험에 임할 수 있도록 포괄적인 가이드를 제공해드리고 있습니다. 현재 리눅스 인증을 준비하고 있지 않더라도 리눅스 시스템 관리에 대한 기본적인 기술을 익힐 수 있을 것입니다. |
|
|
|
2006년 9월 4일 (월) |
|
| |
Linux 애플리케이션을 위한 DLL 작성하기 (한글) Plugin과 DLL은 전체 애플리케이션을 새로 작성하지 않고 기능을 추가 할 수 있는 좋은 방법이다. Linux에서 plugin과 DLL은 동적 라이브러리로서 구현된다. e-business 컨설턴트이자 아키텍트인 Allen Wilson은 동적 라이브러리를 소개하고 그것들을 사용하여 애플리케이션이 실행된 후 애플리케이션을 변경하는 방법을 설명한다. |
|
|
|
2006년 8월 23일 (수) |
|
| |
리눅스 부팅 프로세스 연구 (한글) 리눅스 시스템의 부팅 과정은 많은 단계들을 거칩니다. 표준 x86 데스크탑을 부팅하든 아니면 PowerPC®를 부팅하든 그 단계는 거의 흡사합니다. 리눅스 부팅 과정을 초기 부트스트랩부터 첫 번째 사용자 애플리케이션의 시작 단계까지 설명합니다. |
|
|
|
2006년 8월 18일 (금) |
|
| |
LPI exam prep: LPI exam 101 prep (topic 101): 하드웨어와 아키텍처 (한글) 리눅스 인증 시험 준비를 시작하는 여러분들을 환영합니다. 본 튜토리얼 시리즈에서는 포괄적인 스터디 가이드를 제공하여 여러분들이 자신감을 갖고 시험에 임할 수 있도록 도와드릴 것입니다. |
|
|
|
2006년 7월 18일 (화) |
|
| |
리눅스 디버깅 기술 마스터하기 (한글) 리눅스에서 실행되는 프로그램을 디버깅 할 때 사용할 수 있는 방법들을 설명합니다. 세그멘테이션 오류, 메모리 오버런 및 누수 등의 문제들을 디버깅하는 네 가지 시나리오를 검토해 봅니다. |
|
|
|
2006년 6월 19일 (월) |
|
| |
LPI exam prep: 시스템 보안 라우팅, 보안 FTP, SSH를 위해 리눅스상에 서비스를 사용하여 침입을 방지하고 네트워크 보안을 강화해 봅시다. |
|
|
|
2006년 6월 13일 (화) |
|
| |
Python Django 웹 프레임웍, Part 1: Django와 Python으로 웹 개발하기 웹 개발용 모델-뷰-컨트롤러 스타일의 프레임웍인 Django를 사용하여 파이썬에서 데이터 기반 작업 보드 애플리케이션을 구현해 봅시다. |
|
|
|
2006년 6월 6일 (화) |
|
| |
OpenLDAP로 사용자 계정 중앙화 하기 Red Hat Linux에 OpenLDAP 인증 서버를 구현하여 골치 아픈 사용자 및 그룹 관리를 해결하고 보안을 향상시켜 봅시다. |
|
|
|
2006년 5월 30일 (화) |
|
| |
개발자 입문 시리즈 (한글) 어디서부터 시작할지 막막하십니까? 도움이 필요하시다고요? 여기에서 그 출발점을 찾을 수 있습니다. |
|
|
|
2006년 5월 11일 (목) |
|
| |
64-bit 리눅스로 포팅하기 리눅스 애플리케이션을 64 비트 하드웨어에서 실행할 수 있도록 준비해 봅시다. 64 비트 데이터 모델과 피해야 할 함정에 대해 알아봅시다. |
|
|
|
2006년 4월 24일 (월) |
|
| |
ReiserFS와 리눅스 자신만의 Reiser4 파일 시스템을 구현해 봅시다. |
|
|
|
2006년 4월 18일 (화) |
|
| |
GNU 프로파일러로 코드 속도 높이기 gprof를 사용하여 리눅스 상의 애플리케이션 퍼포먼스를 높여봅시다. |
|
|
|
2006년 4월 18일 (화) |
|
| |
Power Architecture directions: Academic Initiative로 컴퓨터 공학 커리큘럼의 질 높이기 IBM의 Gina Poole이 아웃소싱, 오픈 소스, 메인프레임, 컴퓨터 공학 학위의 경향에 대해 이야기 합니다. |
|
|
|
2006년 4월 18일 (화) |
|
| |
효과적인 시스템 로그 관리 (한글) 의사 결정자에게 정확한 정보 리소스를 제공하라. awk와 XML의 기능을 결합하여, 기업 인트라넷이나 인터넷에 게시하기에 알맞은 형식으로 UNIX 시스템 데이터를 제공하는데 사용할 수 있다. UNIX는 시스템 퍼포먼스, 사용, 비용 등 관리자와 여러 관련 당사자들이 사용할 수 있는 유용한 데이터를 생성한다. |
|
|
|
2006년 4월 10일 (월) |
|
| |
Enterprise Workload Manager를 이용한 퍼포먼스 모니터링 Enterprise Workload Manager(EWLM) 도메인에서 엔드투엔드 퍼포먼스 모니터링을 구현하고 문제 해결도 해봅시다. |
|
|
|
2006년 4월 4일 (화) |
|
| |
리눅스 메모리 모델 (한글) 메모리가 어떻게 구현되고 관리되는지를 배워보자. 세그먼트 제어 단위와 페이징 모델 그리고 물리적 메모리 영역을 자세하게 설명한다. |
|
|
|
2006년 3월 13일 (월) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드 (한글) Linux2.4에 ReiserFS, XFS, GFS와 같은 새로운 파일시스템 기능이 추가되면서 기대를 모으고 있다. 이러한 파일시스템들은 분명 훌륭한 것들이다. 하지만 실제로 그것의 기능과, 어떤 부분에서 효율적으로 사용되는지, 또한 Linux 제품 환경에서 안전하게 사용할 수 있는 방법에 대해서는 정확히 모른다. Daniel Robbins는 Linux 2.4에 새롭게 향상된 파일시스템을 설치하는 방법을 설명한다. 또한 유용한 구현 방법, 성능 관련 정보 및 중요한 기술적인 사항들을 설명하여, 새로운 파일 시스템의 경험이 가능한 즐거운 일이 될 수 있도록 할 것이다. 특히 저널링(Journalling)과 ReiserFS의 장점을 설명한다. |
|
|
|
2006년 3월 5일 (일) |
|
| |
X Window System X의 힘을 리눅스에도 적용시켜 봅시다. X 서버를 설치하고 X, GNOME, KDE 디스플레이 매니저를 설정하고 윈도우 관리 환경을 만드는 방법을 설명합니다. |
|
|
|
2006년 2월 21일 (화) |
|
| |
리눅스 메모리 모델 연구 리눅스 메모리 모델의 개요서인 이 글에서는 메모리가 구현되어 관리되는 방법을 설명한다. |
|
|
|
2006년 1월 24일 (화) |
|
| |
Linux on POWER: 개발자를 위한 개요서 (한글) 리눅스는 최대 가용성과 유연성은 물론, 오픈 표준을 비즈니스 솔루션에 가져왔다고 할 수 있다. POWER 프로세서 기반 서버 제품군의 입증된 퍼포먼스와 신뢰성을 추가하면, 애플리케이션은 Linux on POWER의 결합된 이점들을 거둘 수 있을 것이다. Linux on POWER 하드웨어와 소프트웨어 환경을 소개하고 애플리케이션 개발자들에게 필요한 정보를 제공한다. |
|
|
|
2006년 1월 13일 (금) |
|
| |
Windows용 리눅스 스크린세이버 오픈 소스와 폐쇄 소스가 기름과 물의 관계라고 생각한다면 다시 생각해 보기 바란다. |
|
|
|
2005년 12월 20일 (화) |
|
| |
Ruby On Rails로 웹 어플리케이션 구현하기 (한글) Ruby on Rails는 웹 애플리케이션 개발 세계로 최근에 진입했다. 하지만 아직까지는 베타 버전이다. Rails는 대부분의 웹 애플리케이션의 구현을 자동화한다. 더욱이 웹 애플리케이션의 개별 양상들을 수행하는 Free Software 라이브러리들과 비교해 볼 때, Rails는 모든 양상에 맞는 통합된 툴 세트들을 포함하고 있다. |
|
|
|
2005년 12월 19일 (월) |
|
| |
Linux on board: 임베디드 리눅스를 개척한 Zaurus Sharp Zaurus 핸드헬드는 임베디드 리눅스의 개척자였다. Peter가 Zaurus SL-5600을 분석한다. |
|
|
|
2005년 12월 13일 (화) |
|
| |
리눅스용 터치스크린 설치하기 그 동안 친숙한 인터페이스의 부족은 리눅스를 상용화 하는데 걸림돌이 되었다.
하지만 GUI를 사용할 수 있다면 상황은 달라진다. 사용자 중심의 LCD 터치스크린을 생각해 보자.
이 터치스크린을 통해 커스텀 디지털 미디어 센터, DVR, PVR, 심지어 가정용 로봇의 제어 인터페이스 같은 장치에서
백엔드 리눅스 애플리케이션이 매우 유용하게 쓰일 수 있다. 이 글에서 Sony PSOne의 사례를 기반으로 LCD 설치,
모드라인 생성, 터치스크린 설치에 대해 설명한다. |
|
|
|
2005년 12월 6일 (화) |
|
| |
자가 설정 분산 시스템을 이용한 퍼포먼스 향상 CPU와 메모리 리소스들이 현재의 워크로드에 반응하도록 재설정하여 분산 시스템의 퍼포먼스를 최적화 할 수 있다. |
|
|
|
2005년 12월 6일 (화) |
|
| |
Linux 프로젝트 문서: 보안 (한글) 리눅스 보안에 대해 IBM Linux Technology Center 개발 팀원들이 설명한다. |
|
|
|
2005년 11월 20일 (일) |
|
| |
Linux on board: TiVo (한글) 모든 사람들은 TiVo가 리눅스를 실행한다고 알고 있다. 이 글에서 TiVo에 설치된 리눅스 시스템을 연구할 것이다. TiVo 시스템을 관찰하면 하나의 기업이 데스크탑 운영 체계에서 임베디드 시스템으로 어떻게 변해가는지를 알 수 있을 것이다. |
|
|
|
2005년 11월 19일 (토) |
|
| |
POWER5 가상화: IBM Virtual I/O Server를 사용하여 VLAN 작업하기 (한글) 논리적 네트워크들 간 보안을 향상시키는 방법을 배워보자. Nigel Griffiths가 IBM Virtual I/O Server (VIO 서버)를 사용하여 VLAN과 함께 작업할 때의 효용성에 대해 설명한다. |
|
|
|
2005년 11월 15일 (화) |
|
| |
추천 구독 리스트: DB2 UDB for Linux, UNIX, Windows 데이터베이스 관리 (한글) 데이터베이스 관리자 커뮤니티에서 엄선한 IBM DB2® Universal Database™ 관련 추천 필독 리스트를 소개한다. |
|
|
|
2005년 11월 14일 (월) |
|
| |
리눅스 상의 인터럽트 및 하드웨어 시뮬레이션, Part 1: 가상 디바이스 드라이버 개발 환경 만들기 인터럽트와 하드웨어 시뮬레이션 구현을 통해 장치 드라이버 개발이 쉬워진다. |
|
|
|
2005년 11월 2일 (수) |
|
| |
RAID on Linux on POWER Linux on POWER 서버에서 독립 디스크의 소프트웨어 및 하드웨어 과잉 어레이에 대해 배운다. |
|
|
|
2005년 11월 2일 (수) |
|
| |
Linux on IBM System p5 Express 서버의 클러스터링 솔루션 Linux High Availability (HA) 클러스터와 High Performance Computing (HPC) 클러스터를 IBM POWER 프로세서 기반 서버에 구현하는 방법을 배운다. |
|
|
|
2005년 11월 2일 (수) |
|
| |
분산 DB2 UDB 서버 비교 (한글) 분산 IBM® DB2® Universal Database™ (DB2 UDB) 서버 제품들 간 기본 라이센싱 규칙, 기능, 특성 차이점을 쉽게 이해할 수 있도록 비교하였다. |
|
|
|
2005년 10월 27일 (목) |
|
| |
고성능 리눅스 클러스터링, Part 2: 실행 클러스터 구현하기 고성능 클러스터를 구성 및 관리하고, MPI를 사용하여 병렬 프로그램을 작성하는 방법을 배운다. |
|
|
|
2005년 10월 27일 (목) |
|
| |
임베디드 장치 개발 embedded Standard Widget Toolkit (eSWT)를 사용하여 Model-View-Controller 프레임웍에 근거한 애플리케이션을 개발해 보자. |
|
|
|
2005년 10월 25일 (화) |
|
| |
메타프로그래밍 기술, Part 1: 소개 다른 프로그램들을 생성하는 프로그램을 만든다는 것 만큼 난해한 일은 없다. 하지만 메타프로그래밍은 배울 가치가 있다. |
|
|
|
2005년 10월 20일 (목) |
|
| |
구현 및 단위 테스팅 프로세스 자동화 CruiseControl을 설정하여 코드를 지속적으로 통합 및 테스트한다. |
|
|
|
2005년 10월 11일 (화) |
|
| |
Linux project publications: RAS 신뢰성(Reliability), 가용성(Availability), 서비스 가능성(Serviceability) (RAS)이라는 주제에 대해 IBM Linux Technology Center 개발 팀원들이 설명한다. |
|
|
|
2005년 9월 30일 (금) |
|
| |
프로세서 유사성 활용하기 현재의 affinity 메커니즘을 설명하고 affinity의 이유와 방법을 설명한다. |
|
|
|
2005년 9월 29일 (목) |
|
| |
Linux on POWER용 동적 논리적 파티셔닝 작업 리눅스 상의 동적 LPAR을 실행하는 방법을 배운다. |
|
|
|
2005년 9월 29일 (목) |
|
| |
고성능 리눅스 클러스터링, Part 1: 클러스터링 기초 High Performance Computing (HPC)이 보편화되고 있다. 리눅스 클러스터링의 기초를 배워보자. |
|
|
|
2005년 9월 27일 (화) |
|
| |
리눅스에서 DB2 메모리와 파일 캐시 퍼포먼스 튜닝 메모리 활용과 파일 캐싱은 퍼포먼스에 영향을 미치는 요소들이고 데이터베이스 시스템 튜닝에 중요하게 고려해야 한다. |
|
|
|
2005년 9월 22일 (목) |
|
| |
리눅스 소켓 프로그래밍의 다섯 가지 함정 Sockets API를 사용하는 네트워크 프로그래밍은 쉽고 가치가 있지만 문제점들도 있다. |
|
|
|
2005년 9월 20일 (화) |
|
| |
.NET 애플리케이션을 리눅스로 가져온 Mono .NET에 기반한 오픈 소스 개발 플랫폼인 Mono는 강력하고 유연한 리눅스 애플리케이션 구현을 돕는다. |
|
|
|
2005년 9월 19일 (월) |
|
| |
DB2 Universal Database와 듀얼 코어 그리고 보조 용량 라이센싱 (한글) 듀얼 코어 프로세서와 보조 용량(sub-capacity) 파티셔닝 같은 최신 하드웨어 기술을 배워보자. IBM® DB2® Universal Database™ (DB2 UDB) 서버 제품을 라이센싱 할 때 고려해야 할 사항들에 대해서도 생각해 보자. |
|
|
|
2005년 9월 18일 (일) |
|
| |
WebSphere on zSeries Linux에 대한 FAQ WebSphere(R) on zSeries(R) Linux® 관련 FAQ를 다룬 기술자료이다. |
|
|
|
2005년 9월 15일 (목) |
|
| |
Charming Python: PEAK 연구 Python Enterprise Application Kit (PEAK)은 애플리케이션 컴포넌트를 빠르게 개발하고 재사용 하는데 쓰이는 파이썬 프레임웍이다. |
|
|
|
2005년 9월 15일 (목) |
|
| |
Cultured Perl: Perl의 Unicode 지원 강화 Perl의 Unicode 지원이 강화되었다. |
|
|
|
2005년 9월 15일 (목) |
|
| |
Power Architecture 다운로드와 문서화: 소프트웨어 클러스터링을 위한 서비스 업데이트 클러스터링 기술 관련 업데이트 내용을 다운로드 하자: CSM, GPFS, LoadLeveler, ESSL, HACMP, HPS. |
|
|
|
2005년 9월 6일 (화) |
|
| |
Linux on board: 그룹웨어 도전 오래된 리눅스 박스를 사용하여 작은 웹 기반 가정용 달력을 만든다. |
|
|
|
2005년 8월 26일 (금) |
|
| |
Boot loader showdown: LILO와 GRUB 이해하기 대부분의 리눅스 사용자들은 부트 로더로 알려진 유틸리티를 사용한다. 이 유틸리티의 다양한 변종들마다 다양한 지원과 기능들을 제공한다. 많은 경우, 리눅스 배포판에 기본적으로 설치된 부트 로더가 자신의 필요와 잘 맞지 않는다. 부트 로더의 기본 설정 역시 마찬가지이다. 이 글에서는 대중적인 부트 로더로 자리잡고 있는 LILO와 GRUB을 검토한다. |
|
|
|
2005년 8월 24일 (수) |
|
| |
디지털 애니메이션 시스템 구현, Part 3: 스토리지 시스템 디자인 선택하기 다양한 유형의 파일 시스템과 스토리지를 검토하고 주요 프로젝트에 합당한 것을 고른다. |
|
|
|
2005년 8월 8일 (월) |
|
| |
Linux on Power용 디버깅 툴과 기술 디버깅은 소프트웨어 개발의 핵심 활동이고 애플리케이션 개발자로서 디버깅은 피할 수 없다. 효과적인 디버깅은 소프트웨어 개발 사이클을 줄일 뿐 아니라 비용도 줄여준다. |
|
|
|
2005년 8월 4일 (목) |
|
| |
developerWorks XML 템플릿으로 글 작성하기 developerWorks XML 템플릿으로 글을 작성하는 방법을 설명한다. |
|
|
|
2005년 7월 29일 (금) |
|
| |
CPU 모니터링과 튜닝 표준 AIX 툴을 활용하여 CPU 병목현상을 발견하는 방법을 배워보자.
IBM 퍼포먼스 전문가들이 이 툴에서 생성된 리포트들을 해석하여 퍼포먼스를 향상시키는 방법을 설명한다. |
|
|
|
2005년 7월 28일 (목) |
|
| |
리눅스 스크립트로 무선 관리를 간단하게! 사무실과 이웃에 무선 Internet Service provider (WISP)을 설정하는 것이 어려운 일만은 아니다. 구입하기 쉬운 장비에서 네트워크를 구현하고 리눅스를 사용한다면 네트워크 관리에 쉘 스크립트를 사용할 수 있을 것이다. |
|
|
|
2005년 7월 19일 (화) |
|
| |
왜 FreeBSD 인가? FreeBSD OS는 프리(free) OS들 중에는 알려지지 않았지만 뛰어난 성능을 갖추었다.
386BSD 프로젝트에서 시작되었고 Intel 칩에서 실행되는 매우 빠른 UNIX 계열 OS이다.
구식의 Intel 머신과 64 비트 AMD 칩에서 실행되고 테라바이트(terabytes)의 파일을 공급한다. |
|
|
|
2005년 7월 19일 (화) |
|
| |
Linux on board: TiVo 사람들은 "TiVo가 리눅스를 실행한다"고 알고 있다. 이 글에서는 TiVo에 설치된 리눅스 시스템을 연구할 것이다. TiVo 시스템을 관찰하면 하나의 기업이 데스크탑 운영 체계에서 임베디드 시스템으로 어떻게 변해가는지를 알 수 있을 것이다. |
|
|
|
2005년 7월 6일 (수) |
|
| |
Linux on board: 오래된 머신에 새 생명을 사람들은 리눅스가 오래된 머신을 유용하게 만들 수 있다고 말한다. 정말일까? 이 새로운 시리즈에서 오래된 랩톱과 한 달에 50 달러 예산으로 가치 있는 일을 수행하는 가전제품을 만들어 본다. |
|
|
|
2005년 6월 7일 (화) |
|
| |
리눅스에 RADIUS 서버 구현하기 네트워크 관리자는 자신이 관리하고 있는 네트워크 장치의 사용자 정보를 관리해야 한다. 하지만 네트워크 장치는 제한된 기능만을 지원하기 때문에 사용자 관리를 잘 할 수가 없다. 외부 RADIUS 서버를 사용하여 사용자를 인증하고 특히 LDAP 서버에 대해서, LDAP 서버에 저장된 정보를 중앙화 하고 RADIUS 서버로 인증하여 사용자 관리에 필요한 작업 오버헤드를 줄이고 원격 로그인 프로세스를 보다 안전하게 수행할 수 있다. |
|
|
|
2005년 5월 25일 (수) |
|
| |
리눅스 배포판의 구현 방법 Linux From Scratch (LFS)는 사용자들에게 리눅스 OS가 어떻게 작동하는지를 가르쳐주는 새로운 방식이다. 완전한 OS를 컴파일 하는 것으로 OS가 어떻게 작동하는지를 알려줄 뿐만 아니라 속도, 풋프린트, 보안 등 각 목적에 맞게 시스템을 구현하는데 참조할 수 있다.
|
|
|
|
2005년 5월 24일 (화) |
|
| |
분산 데이터를 관리하는 OpenAFS 분산 파일 시스템은 최근까지 많은 이슈는 없었다. 이를 사용하는 것이 대개는 기업과 교육 네트워크이기 때문이다. 시스템이 오픈 소스 파일 시스템 퍼즐에 어떻게 맞는지는 개념상으로 언제나 명확한 것은 아니다. Open Andrew File System (OpenAFS)은 Network File System (NFS)의 성숙한 대안이다. |
|
|
|
2005년 5월 17일 (화) |
|
| |
OProfile로 퍼포먼스 병목현상 분석하기 OProfile을 배우고 이것을 IBM® POWER™ 프로세서 기반 서버에서 실행되는 리눅스에서 활용해본다. OProfile을 소개하고 Linux on POWER 상에서의 구현을 설명한 다음, 코드를 프로파일링 하는 방법과 Linux on POWER 플랫폼 상에서 OProfile을 사용하여 결과를 분석하는 방법을 두 가지 예제를 통해 설명한다. |
|
|
|
2005년 5월 17일 (화) |
|
| |
리눅스 보안, Part 3: 시스템 하드닝 공격에 대한 저항력이 강한 리눅스 시스템을 만드는 기술을 배워보자. 부트 프로세스와 로컬 파일시스템 보안, 서비스와 데몬 잠금, 할당량과 한계 적용, Mandatory Access Control 실행, 새로운 소프트웨어로 보안을 업데이트 할 때 발생할 수 있는 보안 취약성 인식 등을 다룬다. Part 1에서는 보안 개념과 잠재적 위험을 Part 2에서는 보안 설치를 계획할 때 고려해야 할 사항들을 설명한다. |
|
|
|
2005년 4월 14일 (목) |
|
| |
inotify를 이용한 리눅스 파일 시스템 감시 Inotify는 차기 리눅스 커널에 포함될 파일 시스템 모니터링 메커니즘으로서, 구 커널에서 지원되던 파일 모니터링 메커니즘이였던 dnotify의 강력한 대체재이다. Inotify는 강력하고 세련된 비동기식 메커니즘으로서 보안과 퍼포먼스 등 다양한 파일 모니터링의 필요를 이상적으로 채운다. Inotify를 설치하는 방법과 파일 시스템 이벤트에 응답하는 사용자 공간의 애플리케이션 샘플을 구현하는 방법을 설명한다. |
|
|
|
2005년 4월 12일 (화) |
|
| |
임베디드 개발 플랫폼으로서의 Mac Mini, Part 2: 프리 소프트웨어 NetBSD와 Yellow Dog Linux가 Mac Mini를 지원하기 시작했다. Peter Seebach가 오픈 소스 OS 옵션들을 검토한다. |
|
|
|
2005년 4월 5일 (화) |
|
| |
Xen의 시대: 리눅스를 가상화 하여 애플리케이션 테스트하기 Xen은 리눅스 커널에서 사용할 수 있는 가상화 기술로서 원래 시스템에 피해를 주지 않고도 기존 환경에서 리눅스가 실행되는 것처럼 새로운 업그레이드를 마무리 및 테스트할 수 있는 기술이다. 이 글에서 Fedora Core를 사용하여 Xen을 설치하는 방법을 설명하겠다. 설치한 후에는 어느 배포판의 Xen이나 똑같이 작동된다. 리눅스의 가상화를 연구하고, 새로운 소프트웨어의 테스트에 샌드박스를 사용할 때의 이점과 이 샌드박스를 같은 리눅스 박스에 여러 가상 머신들을 실행하는 장소로 사용하는 것에 대해 설명하겠다. |
|
|
|
2005년 3월 15일 (화) |
|
| |
리눅스를 위한 C++ 예외 핸들링 기술 C++에서 예외를 핸들링 할 때 언어 차원의 제한이 있다. 하지만 어떤 경우 이를 해결할 방법도 있다. 예외를 활용하여 신뢰성 있는 애플리케이션을 만드는데 활용하는 방법을 배워보자. |
|
|
|
2005년 2월 23일 (수) |
|
| |
공유 라이브러리 분석 공유 라이브러리는 애플리케이션들이 사용하는 라이브러리에 업그레이드를 적용할 때 버전 숫자를 사용한다. 동시에 오래된 애플리케이션과의 호환성도 유지한다. 이 글에서는 일반적인 리눅스 시스템에 /usr/lib로의 심볼릭 링크가 많은 이유를 설명하겠다. |
|
|
|
2005년 1월 11일 (화) |
|
| |
Secure programmer: 컴포넌트를 안전하게 호출하기 일반적으로, 애플리케이션 프로그램들은 OS, 데이터베이스 시스템, 재사용 가능한 라이브러리, (DNS 같은) 인터넷 서비스, 웹 서비스 등의 다른 컴포넌트들을 호출한다. 이 글에서는 이러한 호출을 악용하는 사람들을 방지하는 방법을 설명한다. |
|
|
|
2004년 12월 16일 (목) |
|
| |
POWER상의 리눅스에서 IBM XL C/C++ Advanced Edition V7.0 사용하는 방법: GCC 사용자 가이드 이 글은 IBM POWER프로세서 기반의 시스템에서 작업하는 리눅스 개발자들이 GNU gcc와 gcc-c++ 컴파일러 (GCC)에서 IBM XL C/C++ Advanced Edition V7.0으로 빠르게 마이그레이션 할 수 있도록 돕는 지침서이다. 2003년 게시되었던 "How to Use IBM VisualAge C++ Version 6.0 for Linux on IBM pSeries and iSeries"를 업데이트 했다. |
|
|
|
2004년 12월 16일 (목) |
|
| |
메모리 관리 리눅스 프로그래머들이 사용할 수 있는 메모리 관리 기술을 살펴본다. C 언어 중심으로 설명 하겠지만 다른 언어들에도 적용할 수 있다. 메모리 관리가 어떻게 수행되는지, 메모리를 수동으로 관리하는 방법, 카운팅(counting) 또는 풀링(pooling)을 반-수동으로 관리하는 방법, 가비지 컬렉션을 사용하여 메모리를 자동으로 관리하는 방법을 설명한다. |
|
|
|
2004년 11월 16일 (화) |
|
| |
애플리케이션의 구현 및 분산 프로세스를 자동화하기 한 가지 유형의 시스템을 위한 오픈 소스 애플리케이션을 구현할 때 고려해야 할 점이 많다. 하물며 호환되지 않는 머신 간 분산될 애플리케이션을 구현한다면? 약간의 훈련과 커스텀 스크립트를 사용하면 이 과정을 단순화 할 수 있다. 이 글에서는 애플리케이션들을(과도하게 커스터마이징 된 애플리케이션 포함) 구현하여 분산하는 구조를 만드는 방법과 가능한 한 쉽게, 수동 또는 자동으로, 많은 머신들 간 애플리케이션들을 분산시키는 간단한 방법을 설명한다. |
|
|
|
2004년 9월 14일 (화) |
|
| |
초보자를 위한 wxPython 이 글에서는 xyPython 인 Python-sawy GUI 라이브러리를 사용하는 방법을 설명할 것이다. |
|
|
|
2004년 8월 20일 (금) |
|
| |
Secure programmer: 보안 프로그램 개발 보안 애플리케이션을 작성하는 방법에 대한 기본적인 생각을 소개하고 개별 애플리케이션의 보안 요구사항을 구분하는 방법을 설명한다. |
|
|
|
2004년 8월 20일 (금) |
|
| |
Kprobes를 이용한 커널 디버깅 printk를 사용하여 리눅스 커널에서 디버깅 정보를 수집하는 것은 잘 알려진 방법이다. Kprobes를 사용하면 커널을 재부팅 할 필요가 없다. 2.6 커널과 결합된 Kprobes는 printk's를 동적으로 삽입할 때 경량의, 비파괴적인 강력한 메커니즘을 제공한다. 커널 스택 트레이스, 커널 데이터 구조, 레지스터 같은 디버그 정보를 기록하는 것은 결코 쉬운 것은 아니다. |
|
|
|
2004년 8월 20일 (금) |
|
| |
Kprobes를 이용한 커널 디버깅 printk를 사용하여 리눅스 커널에서 디버깅 정보를 수집하는 것은 잘 알려진 방법이다. Kprobes를 사용하면 커널을 재부팅 할 필요가 없다. 2.6 커널과 결합된 Kprobes는 printk's를 동적으로 삽입할 때 경량의, 비파괴적인 강력한 메커니즘을 제공한다. 커널 스택 트레이스, 커널 데이터 구조, 레지스터 같은 디버그 정보를 기록하는 것은 결코 쉬운 것은 아니다. |
|
|
|
2004년 8월 19일 (목) |
|
| |
무선과 리눅스 (한글) Wi-Fi가 '유비쿼터스'가 되면서 리눅스도 시류에 편승했다. Roman Vichr는
리눅스가 많은 무선 툴과 프로젝트를 어떤 방식으로 지원해왔고 또 이들로부터 리눅스가 어떻게 도움을 받았는지를
설명한다. |
|
|
|
2004년 7월 13일 (화) |
|
| |
distcc로 컴파일 시간 줄이기 RPM 형태로 미리 컴파일된 이진 파일에 익숙한 사람도 있는 반면에 다른 설치 방법에 익숙한 사람도 있습니다. 하지만 특히 자주 사용되는 프로그램이라면 허위 절약으로 끝납니다. 미리 컴파일된 이진 파일은 수행할 기계에서 올바른 최적화 기법에 따라 컴파일된 이진 파일에 비해 결코 빠르게 동작하지 못합니다. 분산 컴파일러를 사용하면 빠른 컴파일과 빠른 응용이라는 양쪽 특성을 모두 살립니다. 필요한 준비물은 distcc뿐입니다. |
|
|
|
2004년 6월 22일 (화) |
|
| |
리눅스 개발자와 POWER 아키텍쳐 고성능의 신뢰성 있는 엔터프라이즈 플랫폼으로 알려진
64-bit POWER™ 아키텍쳐는 유닉스와 리눅스 애플리케이션 개발자들에게 새로운 선택을 제안한다. 다른
플랫폼에서 AIX와 리눅스를 다뤄봤다면 IBM의 POWER와 결합된 오픈 소스 커뮤니티에서 많은 것을 얻을
수 있다. |
|
|
|
2004년 5월 30일 (일) |
|
| |
Cultured Perl: Perl로 Excel 파일 읽기/쓰기 데스크탑에 쓰이는 가장 유명한 스프레드시트 애플리케이션인 Microsoft Excel이 공개되었다. 이 글에서는 Perl과 간단한 모듈을 이용한 Windows와 Linux 상에서의 Excel 파일 의 읽기/쓰기를 연구한다. |
|
|
|
2004년 3월 10일 (수) |
|
| |
크로스 개발(cross-development)의 기초 크로스 컴파일 환경의 초기 설치를 설명하고 툴, 기본 컴파일, 설치 프로그램, configure 스크립트를 사용하는 프로그램 구현 이슈 등을 다룬다. |
|
|
|
2004년 3월 5일 (금) |
|
| |
커널 비교 : 웹 서빙 (2.4 vs 2.6) 리눅스 2.6 커널이 엔터프라이즈 애플리케이션에 맞게 발전을 거듭했다. 이 글은 IBM Linux Technology Center가 리눅스 커널 2.4와 2.6의 다양한 측면을 비교하며 수행했던 웹 서빙 테스트 결과이다. 이 글에서 강조한 부분은 2.6 커널에서 뚜렷한 향상을 보인 것이다. 또한 테스트 방법과 테스트 결과도 설명할 것이다. 2.6 커널은 웹 페이지 공급력에 있어서 2.4 보다 훨씬 빠르다. 신뢰성에 대한 손실도 전혀 없다. |
|
|
|
2004년 2월 1일 (일) |
|
| |
pthreads의 기초 쓰레드는 많은 프로그래머들에게 두려움의 대상이다. 유닉스의 프로세스 모델은 간단하고 이해하기도 쉽지만 가끔은 비효율적이다. 쓰레딩은 퍼포먼스를 향상시키지만 약간 혼돈스럽다는 단점이 있다. |
|
|
|
2004년 1월 21일 (수) |
|
| |
Linux 2.6 속으로! 곧 배포될 리눅스 커널의 신뢰성과 확장성이 더욱 강화됨에 따라 리눅스 선택폭이 넓어질 것이라는 전망을 낳고 있다.
이 글에서 리눅스의 변화된 부분을 조명한다. |
|
|
|
2003년 12월 9일 (화) |
|
| |
리눅스 신뢰성 테스트 리눅스 커널과 다른 핵심 OS 컴포넌트-라이브러리 및 장치 드라이버 부터 파일 시스템과 네트워킹 까지-의 테스트 결과와 분석을 정리했다. 모든 테스트들은 매우 극단적 조건 속에서 긴 시간동안 수행되었다. IBM Linux Technology Center는 세 달 간의 테스트를 끝내고 그 결과를 이 자리에서 나눈다. |
|
|
|
2003년 12월 1일 (월) |
|
| |
KDE 소개 KDE(K Desktop Environment)는 현대적인 세련된 감각의 여러 Linux 데스크탑 환경들 중 하나이다. 특정한 몇몇 어플리케이션을 제외하면, KDE는 여러분이 Linux에서 매일 사용할 수 있는 모든 것을 갖추어 놓고 있다. 이 글에서는 KDE를 구하는 방법 및 실행시키는 방법과 더불어, 멀티미디어와 게임을 위한 지원 등 내가 찾은 강력한 특징들을 보여 줄 것이다. 가장 최신의 안정 버전인 KDE 2.1을 기준으로 설명하겠다. |
|
|
|
2003년 12월 1일 (월) |
|
| |
Windows-리눅스 로드맵: 개요 IBM e-비즈니스 아키텍트 Chris Walden이 Windows에서 리눅스 환경으로의 마이그레이션과 관련한 9회 시리즈로 기술자료를 집필하려고 한다. 로깅에서 네트워킹, 명령행에서 시스템까지, 모든 것을 설명해 줄 것이다. |
|
|
|
2003년 11월 11일 (화) |
|
| |
PalmOS 기반 프로그래밍 언어 대부분의 사람들은 PalmOS 애플리케이션을 개발은 데스크탑에서 C/C++ 코드를 작성하는 것으로 생각한다. 그런 다음, 그들은 PalmOS로 크로스 컴파일링(cross compiling)할 것이다. PalmOS 개발에 전혀 다른 접근방식이 있다. David Mertz와 Andrew Blais는 완벽한 프로그래밍 언어를 검토하고, 프로그램 편집에서 최종 실행에 이르기 까지, Palm 상에서 전 과정을 완벽히 실행할 수 있는 개발 환경 제품을 살펴본다. 이러한 툴들은 "mobile" 프로그래머들을 위한 새로운 가능성을 제시한다. |
|
|
|
2003년 11월 7일 (금) |
|
| |
MFC 애플리케이션을 리눅스로 포팅하기 Windows 애플리케이션을 리눅스로 포팅하는 것은 이제 어려운 일만은 아니다. Markus Neifer는 wxWindows를 사용하여 MFC를 포팅하는 방법을 설명한다. |
|
|
|
2003년 11월 7일 (금) |
|
| |
Cultured Perl : C와 Java 프로그래머를 위한 Perl Ted Zlatanov는 C와 Java 프로그램 개발자를 위해 Perl 5.6의 일부 특성을 설명한다. C와 Java 프로그래머들은 연산자의 중의성(operator ambiguity), 동일한 작업을 하는 다양한 방법들, 구두법(punctuation), 정규식(regular expression), 변수 메커니즘 등과 같이 친숙한 기능을 Perl에서 발견한다면 매우 놀랄 것이다. 결론부터 말하면 Perl은 누구에게나 친숙한 영역이 될 수 있으며, 어떤 점에 있어서는 C와 Java 프로그래머들에게 유용하게 사용될 수 있다. |
|
|
|
2003년 11월 7일 (금) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드, Part 11 (한글) 파일시스템 개발자 가이드" 시리즈를 통해 Daniel Robbins는 Linux 2.4의 최신 파일시스템 사용 방법을 설명하고 있다. 구현 어드바이스, 퍼포먼스 정보, 기술 등을 공유하여 새로운 파일시스템 작업이 즐거워진다. 이번에는, XFS, ReiserFS, ext3 파일시스템의 업데이트 상황을 정리하고 Gentoo Linux의 리드 아키텍트로서의 경험도 나눈다. |
|
|
|
2003년 10월 21일 (화) |
|
| |
리눅스에 네트워크 라우터 구현하기 Zebra는 오픈 소스 TCP/IP 라우팅 소프트웨어이다. Cisco의 Internetworking Operating System (IOS)와 비슷하다. 유연하고 강력하여 Routing Information Protocol (RIP), Open Shortest Path First (OSPF), Border Gateway Protocol (BGP) 등의 라우팅 프로토콜을 핸들 할 수 있다. |
|
|
|
2003년 10월 8일 (수) |
|
| |
SDL의 사용: "Pirates Ho"의 탄생 Simple DirectMedia Layer (SDL)의 저자인, Sam Lantinga과 Lauren MacDonell이 Pirates Ho! 게임의 디자인과 구현 프로세스에 대한 시리즈를 시작한다. |
|
|
|
2003년 10월 2일 (목) |
|
| |
리눅스 부팅을 빠르게! 가용성을 희생하지 않고 리눅스 시스템의 부팅 속도를 향상시키는 방법을 설명한다. 필요한 기술은, 시스템 서비스와 그들의 의존성을 이해해야 하고 그것을 병렬로 시작할 수 있어야 한다. |
|
|
|
2003년 9월 17일 (수) |
|
| |
리눅스 부팅을 빠르게! 가용성을 희생하지 않고 리눅스 시스템의 부팅 속도를 향상시키는 방법을 설명한다. 필요한 기술은, 시스템 서비스와 그들의 의존성을 이해해야 하고 그것을 병렬로 시작할 수 있어야 한다. |
|
|
|
2003년 9월 17일 (수) |
|
| |
DB2 기초: 재미있는 날짜와 시간 Windows, UNIX, 리눅스 플랫폼용 DB2 Universal Database에서 SQL을 사용하여 날짜, 시간, 타임스탬프를 조작하는 방법을 설명한다. |
|
|
|
2003년 8월 28일 (목) |
|
| |
IBM은 Bluetooth를 Linux에 더욱 다가서게 했다 눈앞에 임박해 있는 무선 접속 기술인 Bluetooth를 위한 애플리케이션을 개발하도록 장려하고자, IBM은 Linux용 BlueDrekar 프로토콜 스택을 릴리즈하고 HCI UART 트랜스포트 레이어에 대한 드라이버를 오픈 소스화 하였다. |
|
|
|
2003년 8월 20일 (수) |
|
| |
Pyrite을 이용한 Palm-Linux 통합 (한글) Pyrite Project는 Python 프로그래머들이 PalmOS에 액세스 하고 디바이스를 제어할 수 있는 여러가지 관련 툴을 만들었다. |
|
|
|
2003년 8월 20일 (수) |
|
| |
Perl을 사용하여 재사용할 수 있는 웹 애플리케이션 만들기 Perl은 복잡한 웹 애플리케이션 개발을 위한 편리하고 효과적인 툴이다. 하지만 경험이 많은 프로그래머일지라도 Perl을 꺼려할 때가 많다. 왜냐하면 Perl은 배우고 사용하기에 어려운 것처럼 느껴지기 때문이다. 이 글에서는 Perl의 객체 지향 구현(object-oriented implementation)이 그러한 노력을 단순화 시킬 수 있으며, 특히 디자인과 애플리케이션의 기능을 분리 시켰다는 점에서 다른 웹 기술보다 훨씬 더 효율적이라는 것을 설명한다. |
|
|
|
2003년 8월 20일 (수) |
|
| |
명령어로 그래픽 조작하기 큰 용량을 필요로 하는 작업을 한번에 처리하는 데는 명령행 툴만한 것이 없다. 이미지 조작도 예외는 아니다. 웹 개발자와 관리자들은 명령행이든 스크립트에서든지, 많은 파일들을 쉽게 다룰 수 있다는 것에 감사해 할 것이다. 프로그래머 Michael Still이 ImageMagick 수트를 소개한다. |
|
|
|
2003년 7월 16일 (수) |
|
| |
리눅스 커널 디버거 연구 커널 문제들을 디버깅할 때, 커널 실행을 추적하고 이것의 메모리와 데이터 구조를 검사할 수 있도록 한다면 매우 유용할 것이다. 리눅스의 빌트인 커널 디버거인 KDB가 바로 이러한 기능을 제공한다. 이 글에서 KDB가 제공하는 기능을 사용하는 방법과 리눅스 머신에 KDB를 설치 및 설정하는 방법을 배울것이다. |
|
|
|
2003년 6월 5일 (목) |
|
| |
실행중인 리눅스 관리하기 /proc 파일시스템은 리눅스의 탁월한 특징 중 하나이다. 이를 통해 머신을 끄고 재부팅 하지 않고 OS의 상세한 부분들을 관리할 수 있다. |
|
|
|
2003년 5월 1일 (목) |
|
| |
리눅스 퍼포먼스 향상 애플리케이션을 개발할 때 발생할 수 있는 퍼포먼스 문제들을 모델링한 유용한 예제들을 소개한다. |
|
|
|
2003년 4월 10일 (목) |
|
| |
인터뷰: Eric Raymond--기본으로 돌아가기 The Cathedral and the Bazaar 의 저자이자 "Halloween Documents," 의 발행인인 Eric S. Raymond가 그의 최신 프로젝트에 대해 이야기하고 UNIX 개발자들이IDE를 싫어하는 이유도 설명한다. |
|
|
|
2003년 3월 1일 (토) |
|
| |
Cultured Perl: One-liners 개론 Perl을 사용하는 사람들은 명령행 모드의 Perl이 신속한 만큼이나 또한 유용한 스크립팅 엔진이라는 것을 자주 잊는다. 명령행 모드에서의 펄 코드는 대부분의 다른 언어들로 몇 페이지씩 코드를 짜야 하는 만큼의 작업을 단 한 줄로 수행할 수 있다. Teodor가 유용한 몇 가지 예제를 보여줄 것이다. |
|
|
|
2003년 1월 7일 (화) |
|
| |
리눅스 커널 성능과 확장성 향상 리눅스 성능을 향상시키는 첫 번째 단계는 정량화이다. 하지만 어떻게 리눅스나 다른 시스템의 성능을 정량화 할 수 있겠는가? 이 글을 통해, IBM 리눅스 기술 센터 멤버들이 작년 리눅스 2.4와 2.5 커널에서 여러 벤치마크 테스트를 실행했던 경험을 나눈다. |
|
|
|
2003년 1월 1일 (수) |
|
| |
Linux 파일 압축 도구 안내 본 가이드의 사용자는 먼저 저자의 소개를 읽은 후, 목차에 있는 필요한 도구에 대한 가이드를 읽는 것이 효과적이다. 필요하다면 전체를 검토해도 좋다. 각 섹션의 후반에 리소스 링크가 있고, 전체 리소스의 리스트는 가이드의 후반에 실려있다. |
|
|
|
2002년 12월 17일 (화) |
|
| |
파이썬 인트로스펙션(introspection) 가이드 프로그램 객체들을 심층적으로 연구하다 보면 유용한 정보를 얻게된다. 동적, 객체 지향 프로그래밍 언어인 파이썬은 수 많은 기능들을 지원한다. 이 글에서는 파이썬 기능들을 기초적인 것에서부터 고급 기능까지 검토한다. |
|
|
|
2002년 12월 12일 (목) |
|
| |
Cultured Perl: 프로그래머의 Linux 지향 설정 Java 및 Perl 프로그래밍 환경에 적합하게 tcsh, Enlightenment, Eterm 및 Emacs를 커스터마이징하는 방법과 Linux에서의 그 밖의 설정 방법을 설명한다. Java와 Perl프로그래밍 설정용으로 최적화되어 있지만, 다른 언어를 다루는 프로그래머들에게도 유용한 정보가 될 것이다. |
|
|
|
2002년 12월 12일 (목) |
|
| |
Linux 가 임베디드 시장을 석권할 수 있는 세 가지 이유 Judy DeMocker는 Linux가 임베디드 시장을 석권할 것이라고 예견하는 이유를 설명한다. 오픈 소스 라이센스의 편의성, 리눅스를 이용한 임베디드 시스템 관리, 단일 플랫폼의 지원 가능성 여부를 살펴본다. |
|
|
|
2002년 11월 12일 (화) |
|
| |
배쉬 쉘 스크립트로 함수 테스트 하기 함수 테스트는 소프트웨어 개발에 있어서 중요한 부분이다. 배쉬 쉘은 리눅스에 포함되어 있어 손쉽게 사용할 수 있다. Angel Rivera는 이 글에서 라인 명령어를 사용하는 리눅스 애플리케이션의 함수를 배쉬 쉘 스크립트로 테스트하는 방법을 설명한다. 스크립트는 라인 명령어의 리턴 코드에 의존하므로 이 방법을 GUI 애플리케이션에 적용할 수는 없다. |
|
|
|
2002년 11월 7일 (목) |
|
| |
Linux 커널 개발자 회의 제 1회 Linux 커널 개발자 회의 (Linux Kernel Developer Summit) 소식이다.확장성과 인터넷 프로토콜 이슈 부터 보안 및 비동기식 I/O까지 광범위한 주제들이 다루어졌다. 초청을 받은 사람들만이 참석할 수 있었으며 참석자들 또한 Linux 코어 개발자로 제한되었다. Linus Torvalds, Alan Cox, David Miller, Stephen Tweedy를 비롯하여 코어 개발 팀에서 50명이 참석했다. 본 행사는 OSDN상에서 Web 방송으로 볼 수 있다. |
|
|
|
2002년 11월 7일 (목) |
|
| |
인터뷰: Jon "maddog" Hall Steve Brody는 Linux International의 이사인 Jon "maddog" Hall과 인터뷰를 가졌다. 경제, Linux International, Linux의 미래에 대해서 이야기 했다. |
|
|
|
2002년 11월 7일 (목) |
|
| |
Linux 클러스터링 (한글) Rawn Shah는 오늘날 Linux에서 사용 가능한 오픈 또는 폐쇄 클러스터링 솔루션의 미로를 안내하는 전문가이다. |
|
|
|
2002년 11월 7일 (목) |
|
| |
Linux 클러스터링 (한글) Rawn Shah는 오늘날 Linux에서 사용 가능한 오픈 또는 폐쇄 클러스터링 솔루션의 미로를 안내하는 전문가이다. |
|
|
|
2002년 11월 7일 (목) |
|
| |
LTC bulletin: 2001년 5월 21일 Linux Technology Center 소식을 격주로 발행하고 있다. IBM Linux Technology
Center에서는 모든 Linux 관련 기술들이 탄생하고 있다. 이번 주에는 신 버전 배포, 새로운 프로젝트 (GKHI), FreeBSD로의
포트, Linux/390의 커널 변경, Linux Weekly News에 보도 된 LTC의 Maneesh Soni (인도)가
제공한 패치 소식을 전한다. |
|
|
|
2002년 11월 7일 (목) |
|
| |
FTP bean suite Project FTP bean suite 프로젝트 팀이 바빠졌다. Maya Stodte는 FTP bean suite 팀 리더인 Werner Zsolt와 인터뷰를 가진 후, bean suite의 새로운 기능과 제거된 버그들을 살펴본다. 모든 코드 샘플은 Werner Zsolt가 작성했다. |
|
|
|
2002년 11월 7일 (목) |
|
| |
IBM의 Bluetooth 네트워크 시뮬레이터 개발 DeveloperWorks의 Open Source Zone 의 새로운 프로젝트인 BlueHoc은 개발자가 라디오, 베이스밴드, 기타 통신 계층에서 운용되는 애플리케이션을 설계할 수 있도록 시뮬레이트 된 블루투쓰 환경을 제공한다. |
|
|
|
2002년 11월 7일 (목) |
|
| |
Beowulf 클러스터 Andrew Blais는 Beouwulf 클러스터의 개념을 소개한다. Linux 또는 NT에서 병렬로 프로그램 조각(fragment)을 실행하는 다중 CPU를 사용함으로써 프로세스 타임을 획기적으로 줄일 수 있다. Beouwulf 클러스터의 개념을 비롯하여 다양한 구현방법, 클러스터 성능, 효율성을 늘리는 기술을 설명한다. |
|
|
|
2002년 11월 7일 (목) |
|
| |
파이썬 영속성 관리 영속성은 객체를 유지하는 것과 관련된 모든 것이라 할 수 있다. 이 글에서는 관계형 데이터베이스부터 파이썬 까지 파이썬 객체의 영속성 매커니즘을 다룬다. 파이썬의 객체 직렬화 기능도 자세히 검토할 수 있다. |
|
|
|
2002년 11월 1일 (금) |
|
| |
UnitedLinux (한글) UnitedLinux는 SuSE, Turbolinux, Conectiva, SCO의 컨소시엄을 통해 탄생했다. 서버 OS로서 설계되었으며 신뢰성과 안정성을 갖췄다. |
|
|
|
2002년 11월 1일 (금) |
|
| |
Charming Python : Psyco로 파이썬을 C 만큼 빠르게! 어떤 면에서 파이썬 디자인은 자바 디자인과 닮았다. 두 개 모두 가상으로 컴파일된 바이트코드를 인터프리팅하는 가상 머신을 사용한다. JVM이 파이썬보다 나은 것은 바이트코드의 실행을 최적화하는데 있다. 파이썬 컴파일러인 Psyco이 이러한 차이를 줄이는데 도움이 될 것이다. 현재 Psyco는 외부 모듈이지만 언젠가는 파이썬에 포함 될 것이다. |
|
|
|
2002년 10월 1일 (화) |
|
| |
Server clinic : 현실적인 리눅스 보안 보안은 크고 도전이되는 주제이지만 서버측 책임을 맡고있는 사람이라면 기본 단계를 알아야 한다. 이곳에서 사용자 어카운트를 깨끗하고 안전하게 유지하는 많은 방법들을 배워보자. |
|
|
|
2002년 10월 1일 (화) |
|
| |
Server clinic : 서버용 PDF 대부분의 프로그래머들은 PDF를 데스크탑 기술로 간주하지만 서버측에서 PDF 생성 자동화를 통해 훨씬 강력한 문서 관리 프로세스를 할 수 있다. Cameron은 PDF 관리 및 프로그래밍을 위한 ReportLab 라이브러리를 소개한다. |
|
|
|
2002년 9월 1일 (일) |
|
| |
예제로 배우는 배쉬 프로그래밍: Part 3 예제로 배우는 배쉬 프로그래밍’ 시리즈의 마지막회 이다. Daniel Robbins는 배쉬의 장점이 부각된 Gentoo Linux ebuild 시스템을 자세하게 설명한다. 또한 ebuild 시스템이 어떻게 구현되었는지를 단계적으로 설명하고, 다루기 쉬운 배쉬 기술과 구축 전략을 다룬다. 이 시리즈를 충분히 이해했다면 완벽한 배쉬 기반의 애플리케이션을 만들 수 있을 것이다. 자신만의 자동 구축(auto-build) 시스템을 코딩 할 수도 있을 것이다. |
|
|
|
2002년 7월 8일 (월) |
|
| |
예제로 배우는 배쉬 프로그래밍: Part 1 배쉬(bash) 스크립팅 언어로 프로그래밍 하는 방법을 알면 리눅스 사용이 더욱 즐거워진다. 3 회에 걸친 시리즈에서 예제를 통해서 배쉬 프로그래밍을 배울 것이다. 본 시리즈에는 초보자를 위한 기초적인 내용 뿐 아니라 회를 거듭해가면서 중/고급 사용자들을 위해 심도 깊은 주제를 다룰 것이다. |
|
|
|
2002년 7월 8일 (월) |
|
| |
예제로 배우는 배쉬 프로그래밍: Part 2 part 1 에서는 스크립팅 언어의 기본 요소 및 배쉬를 사용해야 하는 이유를 설명했다. part2 에서는 part 1에서 다루지 못했던 내용과 조건문(if-then)이나 루핑과 같은 배쉬의 기본 구성 요소들을 다룰 것이다. |
|
|
|
2002년 7월 8일 (월) |
|
| |
RunTime: 리눅스와 Windows 2000 에서의 고성능 프로그래밍 기술 이 글은 리눅스와 Windows 2000의 성능을 테스트하고 비교하는데 초점을 맞춘 새로운 칼럼이다. Edward Bradford는 각 OS의 최상의 성능에 대한 이해를 돕기 위해, 애플리케이션 보다는 OS 차원에서 두 시스템을 비교할 것이다. 포함되어 있는 소스 코드는 가능한 공정하게 각 플랫폼에 맞는 '최상의 프로그래밍 예제'를 보여준다. |
|
|
|
2002년 7월 6일 (토) |
|
| |
해킹 기술 패스워드와 사용자 계정 악용은 네트워크 보안의 가장 큰 문제이다. Rob Shimonski가 패스워드 크래킹에 대해 설명한다. 크래킹이 어떻게 왜 발생하는지를 조명해본다. 네트워크에 침투하는 것이 얼마나 쉬운지, 침입자가 어떻게 진입하는지, 어떤 툴을 사용하는지, 침입에 어떻게 대항하는지를 설명한다. |
|
|
|
2002년 7월 1일 (월) |
|
| |
PowerPC 어셈블리 어셈블리 언어는 프로그래밍 커뮤니티에게 잘 알려져 있지 않다. 그리고 PowerPC 어셈블리는 더더욱 낯설다. Hollis Blanchard는 PowerPC의 관점에서 어셈블리 언어를 고찰하고 세 개의 아키텍쳐 (ia32, ppc, ppc64) 예제와도 비교한다. |
|
|
|
2002년 7월 1일 (월) |
|
| |
Tutorial: XML과 스크립트 언어 Binary Evolution의 Parand Tony Daruger는 XML 문서들을 조작하고 변형하기 위한 스크립트 언어 사용법에 대한 첫번째 튜토리얼에서, Perl과 함께 이러한 기법들을 사용하는 첫 단계를 소개한다. 이 글에는 XML을 HTML로 변형하는 방식이 소개되어 있으며, 그 뒤를 이어 거래 규칙을 평가하기 위해 Perl, XML 및 데이터베이스를 사용하는 주식거래 애플리케이션이 소개된다. 이 기법들은 Tcl과 Python을 비롯한 다른 스크립트 언어들을 사용해서도 적용할 수 있다. |
|
|
|
2002년 6월 27일 (목) |
|
| |
Charming Python: 파이썬 독서 리스트 업데이트, Part 3 Charming Python 칼럼에서 (11월) 파이썬 책을 소개한 이후에도 많은 파이썬 관련 책들이 출간되었다. "파이썬"을 주제로 다룬 책들을 둘러본다. |
|
|
|
2002년 5월 24일 (금) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드, Part 10 (한글) Linux 2.4에는 Reiserfs, XFS, GFS와 같은 새로운 파일시스템 기능이 추가되었다. 파일시스템은 "좋은 것"이긴 하지만
실제 생산환경에 적용하는 방법에 대해서는 정확히 모르고 있는 것도 사실이다. 이 시리즈를 통해 필자는 Linux 2.4에 새롭게
향상된 파일시스템을 설명한다. 이번에는 XFS 이다.
|
|
|
|
2002년 4월 7일 (일) |
|
| |
Z shell Matt Chapman은 Z shell이 shell 작업의 효율성을 개선시켜줄 수 있다고 주장한다. 이제 비밀이 공개된다. Z shell에 대한 소개, 다른 shell들, 특히 Bash와 구별되는 Z shell만의 장점을 설명한다. |
|
|
|
2002년 3월 14일 (목) |
|
| |
리눅스(또는 이종) 네트워크에서의 컴퓨터 공유, Part 2 이 글에서는 원격에서 애플리케이션을 실행하는 방식으로서 SSH, remote X, VNC, 다른 기술들을 비교한다. David는 VNC 설정 문제, IBM의 Desktop On-Call, remote X, 보안 문제를 다룬다. |
|
|
|
2002년 3월 1일 (금) |
|
| |
RPM을 이용한 소프트웨어 패키지, Part 3 RPM은 리눅스용 소프트웨어를 만드는 데 광범위하게 사용되는 툴이다. 사용자들은 RPM 패키지 제품을 쉽게 설치할 수 있다. 패키지가 설치 또는 제거될 때, 다른 패키지가 설치 또는 제거될 때 스크립트를 실행하는 방법을 설명한다. |
|
|
|
2002년 2월 21일 (목) |
|
| |
RunTime: 프로세스와 쓰레드 관리하기 (한글) 이번 칼럼에서 Edward G. Bradford 박사는 리눅스와 Windows 시스템에서 쓰레드 및 프로세스 관리에 초점을 맞추었다. 프로세스와 쓰레드의 차이점과 그들을 만들고 없애는 방법을 설명한다. 각자의 시스템에서 쓰레드 관리를 공부할 수 있는 적합한 프로그램도 만들어본다. |
|
|
|
2002년 2월 1일 (금) |
|
| |
Kparts로 코딩하기 KDE (K Desktop Environment)의 그래픽 컴포넌트용 아키텍쳐인 Kparts를 설명한다. Kparts는 그래픽 컴포넌트를 애플리케이션 윈도우로 삽입함으로서 같은 함수를 필요로 하는 애플리케이션이 컴포넌트를 공유할 수 있도록 한다. Kparts를 CORBA와 같은 컴포넌트와 비교하고, action, plug-in, part manager, GUI 머징(merging) 등 Kparts에 사용되는 주요 개념을 설명한다. |
|
|
|
2002년 2월 1일 (금) |
|
| |
LTC bulletin: 2002년 2월 14일 IBM Linux Technology Center 소식을 격주간 발행하고 있다. Hotplug PCI 패치, ACPI Hotplug PCI 드라이버, LTC 패치 페이지의 USB 패치 소식을 담았다. EVMS 프로젝트는 베타 버전의 패키지를 발표했고, High Availability Linux 프로젝트는 새로운 Heartbeat을 발표했다. JFS의 새로운 drop도 발표되었다. IPv6와 Samba 프로젝트도 많은 패치를 추가했다. USB 2.0 지원이 추가된 2.5.2 커널 발표소식도 있다. |
|
|
|
2002년 2월 1일 (금) |
|
| |
보다 나은 프로그래밍으로 가는 길: 4장 developerWorks 시리즈를 통해 보다 나은 펄 프로그래밍을 위한 완벽한 가이드를 제공하고 있다. 이번에는, 함수 프로그래밍을 비롯하여, 속도와 우수성을 기대하고 있는 펄 프로그래머에게 중요한 펄 이디엄을 소개한다. |
|
|
|
2002년 1월 8일 (화) |
|
| |
Charming Python: SimpleParse 모듈로 파싱하기 (한글) 파이썬용 파싱 툴들이 많이 있다. 이 칼럼에서는 파이썬의 상단에 구현되는 고급 파싱 언어를 설명한다. SimpleParse는 mxTextTools의 상단에 EBNF 스타일의 신택스를 제공하여 문법의 표현을 명료하게 한다. |
|
|
|
2002년 1월 1일 (화) |
|
| |
보다 나은 프로그래밍으로 가는 길: 5장 보다 나은 펄(Perl) 프로그래밍을 위한 완벽한 가이드를 제공하고 있다. 이번에는 객체 지향 프로그래밍(OOP, Object Oriented Programming)에 대해 설명한다. 객체 지향 프로그래밍이 무엇이고, 언제 쓰이며, 펄에서는 어떻게 작용하는지를 설명할 것이다. |
|
|
|
2002년 1월 1일 (화) |
|
| |
LTC bulletin: 2002년 1월 23일 리눅스 관련 기술이 탄생하고 있는 IBM Linux Technology Center 소식! DPCL 프로젝트의 Linux probes module support (phase one), EVMS와 Event Logging의 새로운 배포판 소식, 가장 빠르고, 최고의 호환성을 갖춘" NGPT 소식 등이 있다. 또한 두 개의 Samba 패치 소식을 비롯하여 기타 패치 소식들과 High Availability Linux 업데이트 소식도 담겨져있다. |
|
|
|
2002년 1월 1일 (화) |
|
| |
GNOME 2 워밍업, Part 1 developerWorks에서 리눅스 존의 인기 칼럼인 GNOMEnclature를 다시 시작하게 되었다. CodeFactory의 Mikael Hallendal와 Richard Hult는 새로운 GNOME 2 플랫폼을 가장 효과적으로 사용할 수 있는 정보를 제공한다. 이 시리즈를 통해서 GNOME 2의 새롭게 향상된 라이브러리를 사용하여 Nautilus view, 패널 애플릿 등을 작성할 것이다. 이 글에서는 GNOME 2 데스크탑 환경을 위한 새로운 기초인 GTK+ 2를 소개한다. GTK+ 2 프로그램을 작성하고 컴파일 하게 될 것이다. GTK+ 2가 GTK+ 1 보다 많은 부분 향상되었다는 것도 알게 될 것이다. |
|
|
|
2002년 1월 1일 (화) |
|
| |
developerWorks 오픈 소스 컴파일러 팜(farm) developerWorks 오픈 소스 프로젝트의 멤버들은 이제 IBM eServer zSeries 서버에서 실행되는 오픈 소스 커뮤니티의 컴파일러 팜(farm)에서 코드를 컴파일 할 수 있다. ZSeries는 세계 최초의 리눅스 메인프레임 서버이다. 이 글에서는 프로젝트 관리자가 액세스를 요청하는 방법을 설명한다. |
|
|
|
2002년 1월 1일 (화) |
|
| |
Cultured Perl: 시스템 관리를 위한 cfengine cfengine (설정 엔진)은, 쉬운 관리 태스크는 자동으로 어려운 태스크는 좀더 쉽게 만드는 유닉스 관리 툴이다. 이 글에서는 cfengine 관리 툴에 익숙해 질 수 있도록 간단한 사용방법을 설명한다. |
|
|
|
2002년 1월 1일 (화) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드, Part 9 (한글) Linux 2.4에는 Reiserfs, XFS, GFS와 같은 새로운 파일시스템 기능이 추가되었다. 파일시스템은 좋은 것이긴 하지만 실제 생산환경에 적용하는 방법에 대해서는 정확히 모르고 있는 것도 사실이다. 이 시리즈를 통해 필자는 Linux 2.4에 새롭게 향상된 파일시스템을 설명한다. 9 번째 시리즈에서는, 리눅스에서 사용할 수 있는 SGI의 엔터프라이즈 파일시스템인 XFS를 설명한다. |
|
|
|
2002년 1월 1일 (화) |
|
| |
LTC bulletin: 2002년 1월 31일 IBM Linux Technology Center 소식을 격주간 발행하고 있다. 이번 주에는 리눅스로 구동 되는 iSeries용 원격 테스트 드라이브 소식, Channel Bonding 릴리스 소식, JFS, LSB 테스트 슈트, 국제화 팀의 패치 소식, Samba, SCTP, Kernel Crash Dump, LTC 멤버가 작성한 백서 소식 등이 실려있다. |
|
|
|
2002년 1월 1일 (화) |
|
| |
EasyGTK를 이용한 GUI 프로그래밍 Gimp Toolkit (GTK+)은 사용자 인터페이스를 만드는데 사용되는 무료 툴킷이다. EasyGTK는 호출을 GTK+로 변환하는 래퍼 라이브러리이다. GTK+를 마스터하는데 필요한 시간과 노력을 줄일 수 있다. EasyGTK 코드를 분석하여 간단한 애플리케이션을 만드는 방법을 설명한다. Gimp Toolkit (GTK+)의 사용 방법도 설명한다. |
|
|
|
2002년 1월 1일 (화) |
|
| |
보다 나은 프로그래밍으로 가는 길: 3장 developerWorks 시리즈를 통해 보다 나은 펄 프로그래밍을 위한 완벽한 가이드를 제공하고 있다. 세 번째 시리즈에서는 펄 루프 신택스, 조건문, 깨끗한 코드 작성 방법 등을 설명한다. 펄을 좀 더 효과적으로 적용할 수 있는 방법을 배울 수 있다. |
|
|
|
2001년 12월 19일 (수) |
|
| |
리눅스 설정 파일 이 글은 멀티 유저/멀티태스킹 환경에서 사용자 권한, 시스템 애플리케이션, 데몬, 서비스, 기타 관리 태스크 등을 제어하는 리눅스 시스템의 설정 파일을 설명하고 있다. 사용자 계정 관리, 디스크 할당, 이메일 및 뉴스그룹 관리, 커널 매개변수 설정 등이 태스크에 포함된다. |
|
|
|
2001년 12월 1일 (토) |
|
| |
LTC bulletin: 2001년 12월 12일 리눅스 관련 기술이 탄생하고 있는 IBM Linux Technology Center 소식!이번 주에는 새로운 Bastille Linux, High Availability Linux, SBLIM의 새로운 레퍼런스 구현, 최근 Debian 테스트 버전에 포함된 System Installation Suite 등의 소식을 담았다. |
|
|
|
2001년 12월 1일 (토) |
|
| |
리눅스(또는 이종) 네트워크에서의 컴퓨터 공유, Part 1 Secure shell (SSH)과 Virtual Network Computing (VNC)을 여러 각도에서 비교한다. 두 기술 모두 사용자가 하나의 워크스테이션에서 다른 컴퓨터에 있는 애플리케이션을 실행할 수 있도록 하는 기술이다. (파일 및 프린트 공유나 httpd, ftpd, smtp, nntpd와 같은 인터넷 서비스는 다루지는 않을 것이다.) SSH와 VNC를 설치하고 설정하는 팁을 비롯하여 툴 안정성, 툴 선택, 라이센스 등에 관해 설명한다. |
|
|
|
2001년 12월 1일 (토) |
|
| |
RPM을 이용한 소프트웨어 패키지, Part 2 (한글) RPM은 리눅스용 소프트웨어 개발에 사용되는 툴이다. 사용자들은 RPM 제품을 쉽게 설치할 수 있다. 이번에는 root로서 실행하지 않고 소프트웨어 패키징 하는 방법, 변경 작업 없이 리눅스에서 구현하지 않은 소프트웨어 핸들하는 방법, 작업을 배포하는 방법 등을 설명한다. |
|
|
|
2001년 12월 1일 (토) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드, Part 8 (한글) Linux 2.4에는 Reiserfs, XFS, GFS와 같은 새로운 파일시스템 기능이 추가되었다. 파일시스템은 좋은 것이긴 하지만 실제 생산환경에 적용하는 방법에 대해서는 정확히 모르고 있는 것도 사실이다. 이 시리즈를 통해 필자는 Linux 2.4에 새롭게 향상된 파일시스템을 설치하는 과정을 설명한다. 이번에도 계속해서 ext3을 연구한다. ext3의 “모든 것”을 밝힌다. |
|
|
|
2001년 12월 1일 (토) |
|
| |
보다 나은 프로그래밍으로 가는 길: 2장 펄 프로그래밍 발전 방안들을 제시하고 있다. 두 번째 시리즈에서는 코드의 주석을 분석한다. 프로그램 코드의 주석은 실제 코드 만큼이나 소프트웨어 팀에 있어서는 중요하다. |
|
|
|
2001년 11월 28일 (수) |
|
| |
Charming Python: 파이썬 참고서적 리뷰, Part 2 2001년 2월, 파이썬 관련 책들을 소개한 이후에도 많은 책들이 출간되었다. 새로운 책들을 검토해 본다. 이 글에 소개되지 않은 책들은 다음에 소개하도록 한다. |
|
|
|
2001년 11월 21일 (수) |
|
| |
보다 나은 프로그래밍으로 가는 길: 1장 소프트웨어 프로그래밍 그룹의 성패는 팀의 공조가 얼마나 잘 이루어지는 지에 상당부분 좌우된다. 관리자부터 멤버까지 각 부분의 조화가 필요하다. Teodor는 조화롭고 힘이 집중된 프로젝트 그룹을 만들 수 있는 방안을 제시한다. 첫 번째 시리즈에서 Teodor는 그가 집필한 책을 소개하고 새로운 관점의 코딩 가이드라인을 제안한다. |
|
|
|
2001년 11월 20일 (화) |
|
| |
Cultured Perl: 시스템 관리를 위한 xinetd 프로그램 유닉스 관리자들이라면 중앙화 된 설정 파일 (inetd.conf)을 통해 인커밍 네트워크 커넥션을 관리하는 데몬인 inetd에 익숙 할 것이다. xinetd 데몬은 inetd 데몬의 대안으로서, 기능이 많이 향상되었고 설정하기도 훨씬 쉬워졌다. Ted는 inetd의 개념과 xinetd의 설치 방법을 설명한다. |
|
|
|
2001년 11월 1일 (목) |
|
| |
RunTime : 소켓 프로그래밍 소켓을 이용한 통신을 연구한다. Ed는 소켓 프로그램을 작성하는 몇 가지 기술을 설명하고 이러한 프로그래밍 기술들이 다양한 OS 환경에서 어떻게 수행되고 있는지를 설명한다. |
|
|
|
2001년 11월 1일 (목) |
|
| |
RPM을 이용한 소프트웨어 패키지, Part 1 RPM은 리눅스용 소프트웨어 개발에 사용되는 툴이다. 사용자들은 RPM 제품을 쉽게 설치할 수 있다. IBM의 소프트웨어 엔지니어인 Dan Poirier는 Red Hat Linux 7.1 시스템에서 RPM을 이용한 소프트웨어 패키지 방법을 설명한다. |
|
|
|
2001년 11월 1일 (목) |
|
| |
LTC bulletin: 2001년 11월 28일 Linux 관련 기술들이 탄생하는 IBM Linux Technology Center 뉴스이다. 이번 주에는
Channel Bonding, EVMS, JFS 소식을 비롯하여 Eclipse의 배포 소식이 담겨져 있다. 툴 개발 통합을 용이하게
하도록 디자인된 Java 기반의 IDE 소식과 새로 시작하는 Mini-libc Builder도 다루었다. LTC의 문서 업데이트
소식도 있다. |
|
|
|
2001년 11월 1일 (목) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드, Part 7 Linux 2.4에는 Reiserfs, XFS, GFS와 같은 새로운 파일시스템 기능이 추가되었다. 파일시스템은 좋은 것이긴 하지만 실제 생산환경에 적용하는 방법에 대해서는 정확히 모르고 있는 것도 사실이다. 이 시리즈를 통해 필자는 Linux 2.4에 새롭게 향상된 파일시스템을 설치하는 과정을 설명한다. 이번에는 ext3에 대해 연구한다. |
|
|
|
2001년 11월 1일 (목) |
|
| |
DAISY: 대형 머신을 위한 오픈 소스 JIT 컴파일러 IBM의 왓슨 연구센터(Watson Research Center)는 바이너리 변환 연구를 위한 오픈 소스 소프트웨어인 DAISY를 발표했다. DAISY의 동적 컴파일과 16-wide VLIW는 이 프로젝트를 컴파일러 기술과 아키텍처의 기능의 제일 선에 두었다. Maya Stodte는 DAISY에 대한 면밀한 검토를 하는 개발팀에서 연구활동을 하고 있다. |
|
|
|
2001년 11월 1일 (목) |
|
| |
2001년 11월 15일 IBM 내부의 Linux 관련 기술을 관리하는 Linux Technology Center에서 제공하는 격주 발행 뉴스이다. 이번 주에는 새로운 Jikes Research Virtual Machine 소식을 비롯하여 세 개의 Samba 패치와 다양한 System Installer 배포 소식이 있다. Linux 커널 2.4.11에 통합된 ACP modem (Mwave) 드라이버 업데이트 소식도 다룬다. |
|
|
|
2001년 11월 1일 (목) |
|
| |
LTC bulletin: 2001년 10월 30일 이번 주에는 35개가 넘는 프로젝트와 패치 업데이트 소식을 담았다. 8월 30일 이후 LTC bulletin이 발행되지 않았기 때문에 내용이 많다. Linux Technology Center에서 직접 자세한 소식을 참조할 수 있다. |
|
|
|
2001년 10월 1일 (월) |
|
| |
Tip: C/C++에서 객체 리스트 코딩하기 메모리에 규정할 수 없을 정도의 다양한 객체를 가져야 하는 프로젝트를 경험한 적이 있는가? 이 같은 경우 바이너리 트리가 최상의 솔루션이 될 수 있다. 일반적으로는 Linked List가 훨씬 간단하고 확실하다. |
|
|
|
2001년 10월 1일 (월) |
|
| |
Linux client Linux로의 전향을 고려하고 있는가? 경제적 효용성과 오픈 소스 소프트웨어의 플랫폼 간 호환성에 대한 이야기는 많이 들어봤을 것이다. 하지만 OS환경을 바꾸는 것에는 여전히 겁을 먹게된다. IBM의 Mark Chapman은 Linux newbie로서의 경험과 Linux로 OS를 바꾸려고 시도했던 경험들을 전한다. |
|
|
|
2001년 10월 1일 (월) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드, Part 6 Linux 2.4에는 Reiserfs, XFS, GFS와 같은 새로운 파일시스템 기능이 추가되었다. 파일시스템은 좋은 것이긴 하지만 실제 생산환경에 적용하는 방법에 대해서는 정확히 모르고 있는 것도 사실이다. 이 시리즈를 통해 필자는 Linux 2.4에 새롭게 향상된 파일시스템을 설치하는 과정을 설명한다. 이번에는 init wrapper를 사용하여 "devfs mode"로 시스템을 바꾸는 방법을 설명한다. |
|
|
|
2001년 10월 1일 (월) |
|
| |
솔라리스 애플리케이션을 리눅스로 포팅하기 IBMer Malcom Zung과 Brian Thomson은 Solaris에서 Linux로 애플리케이션 포팅을 하는 이유를 비롯하여 가이드라인, 제안, 리소스를 제공하고, Linux와 호환을 목적으로 Solaris 애플리케이션에 사용되는 API 검토에 사용되는 툴도 제공한다. |
|
|
|
2001년 10월 1일 (월) |
|
| |
RunTime: Linux, Windows 2000, Windows XP의 "pipe" (한글) Ed는 OS 프로그래밍 인터페이스에 대한 연구를 시작한다. 그 첫 번째 대상은 pipe 이다. 연구 대상 OS에 최근에 배포된 Windows XP가 추가되었다. 이 글에서 Ed는 Windows 2000 Advanced Server (Service Pack 2 설치), Linux (Red Hat 7.1), Windows XP professional에서 pipe를 실행한다. |
|
|
|
2001년 10월 1일 (월) |
|
| |
퀀텀 컴퓨팅(Quantum Computing) 향후 몇 십년 안에 퀀텀 컴퓨터(quantum computer)는 공상 과학이나 연구실에서 나와 실제 애플리케이션으로 적용될 것이다. 결정적 컴퓨터(deterministic computer)가 포기해야 했던 복잡한 조합이론(combinatorics)과 관련된 많은 문제들이 퀀텀 컴퓨터(QCs)에서는 효율적으로 해결된다. 이 글에서 벡터 수학에 근거한 퀀텀 컴퓨팅(quantum computing)을 소개한다. 이 글에 제시된 예제들은 qcl (quantum computing language)을 사용한다. GNU General Public License 하에 배포되는 퀀텀 컴퓨터용 무료 프로그래밍 언어이다. 개발자들은 qcl을 이용하여 '가상의' 퀀텀 컴퓨터를 시뮬레이팅 하고 시험할 수 있다. 이 글의 필자들인, Brad Huntting와 David Mertz는 수학 분야의 전문가이자 베테랑 프로그래머이다. |
|
|
|
2001년 9월 13일 (목) |
|
| |
Common threads: OpenSSH 키 관리, Part 2 (한글) 많은 개발자들은 telnet과 rsh 커맨드 대신 OpenSSH를 사용하고 있다. OpenSSH의 매력적인 기능 중 하나는 한 쌍의 숫자 "키" 기반인 RSA와 DSA 인증 프로토콜을 사용한다는 점이다. RSA와 DSA 인증의 가장 주요한 강점이라면 패스워드 없이 원격 시스템에 연결할 수 있다는 것이다. 이 글에서 Daniel은 특별한 배쉬(bash) 스크립트인 ssh-agent(비밀 키 캐시)와 keychain을 소개한다. 키 기반 인증이 매우 편리해지고 유연성을 지니게 될 것이다.
|
|
|
|
2001년 9월 1일 (토) |
|
| |
Open UNIX 플랫폼의 보안 향상 open UNIX 보안을 향상에 활용할 수 있는 쉘 애플리케이션을 소개한다. 코드를 자세히 단계별로 분석한다. 이 글의 저자는 웹 프로그래밍과 네트워크 보안 개발 전문가이다. |
|
|
|
2001년 9월 1일 (토) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드, Part 3 (한글) VM 기반의 파일시스템인 tmpfs에 대해 연구하고 2.4에 새롭게 추가된 기능인 "bind"-mounting 기능을 소개한다. |
|
|
|
2001년 9월 1일 (토) |
|
| |
Charming Python: Iterators & generators (한글) Python 2.2에 새로운 keyword와 더불어 새로운 구조체가 추가 되었다. generator는 새롭고 강력하며 표현적인 programming idiom을 가능하게 한다. 하지만 쉽게 이해하기는 어렵다. 이 글에서 David는 generator를 소개하고, iterator와 관련한 관련 주제를 다룬다. |
|
|
|
2001년 9월 1일 (토) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드, Part 4 "고급 파일시스템 개발자 가이드" 네 번째 시리즈이다. 이번에는 디바이스 관리 파일시스템인 devfs의 중요성과 점을 설명한다. 시스템에 devfs를 효과적으로 설치하는 방법도 설명되어 있다. |
|
|
|
2001년 9월 1일 (토) |
|
| |
파이썬과 Zope를 C로 확장하기 파이썬을 C로 확장하는 것은 쉽다. 일단, 이것이 어떻게 작동되는 지를 알면된다. 파이썬의 확장도 쉽다. 다만, 필요한 정보를 찾기 위해 다른 문서들을 이리저리 찾아 헤매야 한다는 점이 어려운 일이다. Michael은 이 글 안에 그 모든 것을 정리했다. |
|
|
|
2001년 8월 29일 (수) |
|
| |
pydoc과 distutils 모듈 최근 Python에 도입된 여러 모듈과 툴로 인해서 Python이 많이 향상되었다. 언어로서 뿐 아니라 툴로도 많은 성장을 했다. David Mertz 박사는 Python 모듈과 패키지의 문서 및 배포판을 검토한다. |
|
|
|
2001년 8월 29일 (수) |
|
| |
Windows 사용자를 위한 Linux 용어집 처음 Linux의 세계에 빠져들고자 하는 Microsoft Windows 사용자들이 배워야 할 많은 새로운 용어들이 있다. Mark Chapman이 취합한 이 용어집은 Linux 관련 제품에서 흔히 접할 수 있는 175개 이상의 용어 및 약어들의 의미를 설명한다. (몇몇 용어들은 Linux에서만 사용되는 것이 아니지만, 많은 Windows 사용자들에게는 여전히 새로울 수 있을 것이다.) |
|
|
|
2001년 8월 1일 (수) |
|
| |
오픈 소스 활용 오픈 소스는 상용 소프트웨어를 개발하는 사람들에게도 필요하다. 모순처럼 들리겠지만 상용 제품 개발 프로세스에 오픈 소스 도구와 방법론을 도입한 회사의 사례를 통해 알아보자. |
|
|
|
2001년 8월 1일 (수) |
|
| |
Linux Unicode programming 멀티 바이트(multi-byte) 문자 표시 체계인 Unicode는 전 세계의 모든 텍스트를 인코딩 및 변환하는 역할을 한다. 이 글에서는 국제적인 언어지원의 중요성과 Unicode를 Linux 애플리케이션에 적용하는 방법을 설명한다. |
|
|
|
2001년 8월 1일 (수) |
|
| |
Cultured Perl: Perl의 유전자 알고리즘 다윈의 적자 생존 원리에 입각한 유전자 프로그래밍(genetic programming)은 지속적으로 활용할 수 있는 컴퓨터 프로그램 구현에 쓰이는 알고리즘을 만들기 위해 변형(mutation)와 복제(replication)개념을 이용한다. 이 칼럼에서는 유전자 알고리즘 개념을 간단히 설명한다. 그리고, 몇가지 특정 태스크를 위한 Perl 구현을 통해 genetic use에 좀 더 쉽게 접근할 수 있을 것이다. |
|
|
|
2001년 8월 1일 (수) |
|
| |
Common threads: 고급 파일시스템 개발자 가이드, Part 2 (한글) Linux 2.4 기반의 ReiserFS 시스템 설치 과정을 상세히 설명한다. |
|
|
|
2001년 8월 1일 (수) |
|
| |
LTC bulletin: 2001년 8월22일 JFS, LUI, MWave, NGPT등의 프로젝트가 발표한 신 배포판을 비롯하여 새로운 프로젝트인 Linux Test Project, openCryptoki, PAQ (the Prioritize Accept Queues) 프로젝트 소식을 전한다. 자세한 소식은 Linux Technology Center 링크를 통해 볼 수 있다. |
|
|
|
2001년 8월 1일 (수) |
|
| |
LTC bulletin: 2001년 8월 30일 Internationalization patches for GNU bash 소식과 새로운 프로젝트인 SBLIM 소식을 전한다. 자세한 소식은 Linux Technology Center 링크를 통해 볼 수 있다. |
|
|
|
2001년 8월 1일 (수) |
|
| |
임베디드 Linux 애플리케이션 : 개요 Darrick Addison은 임베디드 리눅스 애플리케이션과 환경을 검토한다. 애플리케이션을 개발하는데 있어서 적합한 하드웨어 및 소프트웨어 환경을 설정하는 방법을 설명한다. |
|
|
|
2001년 8월 1일 (수) |
|
| |
루비(Ruby) 프로그래밍 Linux Networking HOWTO, Linux PPP HOWTO, Linux Consultants HOWTO의 저자이자 Command Prompt, Inc 의 공동 창업자인 Joshua Drake가 Ruby 프로그래밍을 설명한다. 다른 언어 사용자라도 이 글을 통해 유용한 정보를 얻을 수 있을 것이다. |
|
|
|
2001년 7월 31일 (화) |
|
| |
JAPH JAPH는 "Just another Perl hacker"를 만들어내는 짧은 스크립트이다. 초급 또는 중급의 Perl 프로그래머를 위해 이 글을 썼지만, 이 글에 쓰인 간단한 JAPH 예제는 수준 높은 전문가에게도 도움이 될 것이다. |
|
|
|
2001년 7월 31일 (화) |
|
| |
RunTime: 블록 메모리 복사, Part 2 (한글) 이전 칼럼에서 Edward는 메모리에서 메모리로의 이동을 측정했다. 이번에는 Linux와 Windows 2000 상에서 16MB 메모리를 옮기는 문제를 좀더 자세하게 다룬다. 지난 번의 측정이 제한된 범위에서 이루어졌기 때문에 어떤 유용한 결론도 이끌어 낼 수 없었다. 이번 글에서 Edward는 이동 할 블록 크기를 다양화하였다. |
|
|
|
2001년 7월 1일 (일) |
|
| |
LTC bulletin: 2001년 7월 16일 이번 주에는 새로운 패치와 릴리스 소식을 비롯하여, global spinlock list 및 usage document 업데이트 소식도 다루었다. JFS1.0 이 발표되었고 Distributed Lock Manager version 0.4가 출시되었다. Richard Moore의 백서 소식도 다룬다. 자세한 소식은 Linux
Technology Center 링크를 통해 볼 수 있다. |
|
|
|
2001년 7월 1일 (일) |
|
| |
2001년 7월 31일 새 프로젝트인 System Configurator 소식과 SNIA & CIMOM 패치 소식을 비롯하여, Open AFS, JFS, DProbes, Omni 프로젝트 소식을 전한다. Linux Technology Center 링크를 통해 자세한 내용을 볼 수 있다. |
|
|
|
2001년 7월 1일 (일) |
|
| |
Cultured Perl: Perl을 이용하여 UNIX 시스템 관리 자동화하기 UNIX 시스템 관리는 언제나 골치 아픈 문제이다. 하지만 올바른 툴만 있다면 좀 더 쉬워질 수 있다. 이 글에서 Toedor는 시스템 관리의 능률화와 안전성을 위해 Perl을 사용할 것을 제안한다. 시스템 설정 엔진인 cfengine은 이런 관점에서 볼 때 매우 중요한 툴이라고 할 수 있다. |
|
|
|
2001년 7월 1일 (일) |
|
| |
PalmOS용 Python (한글) Pippy는 PalmOS용 Python 포트이다. Pippy를 이용하여 palm에서 실행되는 사용자 애플리케이션을 만들 수 있다. palm 상에서 대화형 환경으로 Pippy를 직접 사용할 수 있다. David는 이 글을 통해 palm 애플리케이션 구현 수단으로서의 Pippy의 장점과 한계를 평가한다. |
|
|
|
2001년 7월 1일 (일) |
|
| |
Linux 사용자를 위한 FAQ Microsoft의 Windows에서 Linux로 전향하여 사용할 때에 많은 질문들, 문제, 관심사들이 발생 할 것이다. 이 글에서는 그러한 다양한 질문들을 주제별로 정리해 놓았다. |
|
|
|
2001년 7월 1일 (일) |
|
| |
Linux 하드웨어 안정성 가이드, Part 2 Linux가 명성을 얻는데에는 안정성이 큰 기여를 했다. 하지만, 세상에서 가장 안정적인 OS라도 하드웨어에 결함이 있거나 설정이 잘못되었다면 아무런 소용이 없을 것이다. NVIDIA의 드라이버를 사용하여 Linux에서 NVIDIA TNT 그래픽 카드를 실행했었던 필자(Daniel Robbins)의 경험을 이야기한다. IRQ와 PCI latency 타이머 문제를 진단하고 픽스하는 방법을 설명한다. |
|
|
|
2001년 7월 1일 (일) |
|
| |
Common threads: OpenSSH 키 관리, Part1 "OpenSSH 키 관리" 시리즈를 통해 RSA와 DSA 인증(authentication)이 어떻게 작동하는 지를 배워보자. 그리고 패스워드가 없는(passwordless) 인증을 올바르게 설정하는 방법도 설명한다. 첫 번째 글에서는 RSA와 DSA 인증 프로토콜을 소개하고 네트워크상에서 작동시키는 방법을 설명한다. |
|
|
|
2001년 7월 1일 (일) |
|
| |
팁: 편리한 CGI 스크립팅 CPAN의 CGI 모듈을 이용하면 효율적이고 편리하게 작업할 수 있고 탁월한 코드와 레퍼런스 라이브러리도 제공 받을 수 있다. 모듈에 포함된 POD (Plain Old Documentation) 또한 탁월하다. |
|
|
|
2001년 6월 28일 (목) |
|
| |
Charming Python: Python에서의 함수 프로그래밍, Part 3 David Mertz 박사는'Python에서의 함수 프로그래밍', Part 1 and Part 2 시리즈를 통해 함수 프로그래밍의 기본 개념을 다루었다. 이번에는 Xoltar Toolkit에 있는 커링(currying)과 기타 higher-order 함수에 대해 설명한다. |
|
|
|
2001년 6월 27일 (수) |
|
| |
Charming Python: 파이썬 용 XML 툴 리뷰 David Mertz의 이전 Charming Python 칼럼에서는 Python을 XML를 이용하여 작업하는 것에 대해 설명했다. 하지만 그 이후 파이썬용 XML 툴의 상태는 급격하게 진보했다. 하지만 호환성 문제에 있어서는 큰 진보가 없었다. 이 글을 통해 XML 툴에 대해 필자가 썼던 글을 리뷰하고 최신 코드 샘플도 검토한다. |
|
|
|
2001년 6월 5일 (화) |
|
| |
펄의 Inline 사용하기 펄의 새로운 Inline 모듈을 사용하면 다른 언어(C, Python, Tcl, Java 등)에서 코드를 작성하고 그것을 펄 스크립트로 전달할 수 있다. Inline은 사용하기가 매우 쉬우며 펄의 철학과도 잘 부합된다. |
|
|
|
2001년 6월 1일 (금) |
|
| |
Linux에서의 보안 문제 일단 Linux를 자신의 컴퓨터 또는 네트웍상에서 설치 및 가동시키고 있으며 어플리케이션을 설치해서 사용하고 있다면, 모든 것이 완벽한 상태이다. 그런가? 맞을 수도 있고 틀릴 수도 있다. 시스템은 잘 가동될 수 있을 테지만, 보안 문제를 고려치 않는다면 항상 잠재적으로 심각한 문제에 노출되어 있는 상태라는 것을 알아야 한다. |
|
|
|
2001년 6월 1일 (금) |
|
| |
RunTime: 블록 메모리 복사 (한글) 이전 칼럼 에서 Bradford 박사는 Linux와 Windows 2000을 측정할 툴과 앞으로의 성능 조사 계획을 설명했다. 이 글에서는 간단한 작동, 메모리에서 메모리로의 복사, 메모리에서 byte를 이동하는데 걸리는 시간 등을 중심으로 설명한다. |
|
|
|
2001년 6월 1일 (금) |
|
| |
LTC bulletin: 2001년 6월 19일 이번 주에는 새로운 프로젝트인 ppc64와 Scalable Scheduling for Linux 소식을 비롯하여 신버전 및 패치 릴리즈, LUI 프로젝트와 SystemImager의 합병 소식, 백서 및 이벤트, GNU C Library Steering Committee 선거 소식을 다룬다. 자세한 내용은 Linux
Technology Center 링크를 통해 볼 수 있다. |
|
|
|
2001년 6월 1일 (금) |
|
| |
BeOS 를 이용한 웹 개발 웹 개발을 위해 플랫폼을 선택할 때 대부분 BeOS를 선택의 대상에서 제외하는 경향이 있다. BeOS Release 5는 웹 개발자가 원하는 친숙하고, 성능 좋고, 빠르며 믿을 수 있는 OS 환경을 제공한다. |
|
|
|
2001년 5월 29일 (화) |
|
| |
LTC bulletin: 2001년 5월 7일 Linux Technology Center 소식을 격주로 발행하고 있다. IBM Linux Technology Center에서는 모든 Linux 관련 기술들이 탄생하고 있다. 이번주에는 신 버전 출시 소식, 새로운 패치 및 패치 업데이트, SNIA (Storage Networking Industry Association)소식, OSCAR(Open Source Cluster Applications Resources)소식 등을 다룬다. 이 글에서는 빠르게 살펴볼 수 있도록 간략하게 요약해 놓았지만 자세한 소식은 Linux Technology Center 링크를 통해 볼 수 있다. |
|
|
|
2001년 5월 1일 (화) |
|
| |
Charming Python: 파이썬 IDE David Mertz는 몇가지의 Python의 통합된 개발 환경 검토하고 기능, 플랫폼, 안정성 등을 비교한다. 의도하지 않던 오픈 소스 옹호론처럼 들리겠지만 필자는 "무료" 제품이 상용 제품보다 훨씬 낫다는 것을 발견했다. |
|
|
|
2001년 5월 1일 (화) |
|
| |
Perl/CGI 프로그래머를 위한 Zope Zope(Z Object Publishing Environment)은 인기를 더해가는 애플리케이션 서버이다. 애플리케이션 서버는 무엇인가? CGI와 같은 익숙한 페러다임과 비교한다면? Zope은 일시적 유행으로 끝날것인가? 아니면 지속될 것인가? 여기 그 해답이 있다. |
|
|
|
2001년 4월 26일 (목) |
|
| |
Charming Python: Python에서의 함수 프로그래밍, Part 2 David Mertz는 Part 1 에 이어서 FP(Functional Programming)에 대한 기본 개념을 설명하고 있다. David는 다양하고 진보적인 FP 개념들을 설명하면서 프로그램 문제 해결에 대해 다른 패러다임을 제시한다. |
|
|
|
2001년 4월 19일 (목) |
|
| |
Samba 2.2 Samba 2.2에 놀라운 기능이 추가되었다. Samba 2.2 가 어떻게 엔터프라이즈 사용에도 손색 없는 UNIX/Windows 통합 솔루션으로 발전했는지를 설명한다. 새로운 Samba 2.2는 Windows 2000 클라이언트와 Windows NT 도메인 컨트롤러 지원을 비롯하여 새롭게 향상된 기능들이 추가되었다. |
|
|
|
2001년 4월 1일 (일) |
|
| |
Charming Python: Python에서의 프로그래밍, Part 1 일반적으로, 사용자들은 Python이 절차적(procedural)이며 객체 지향적 언어라고 생각하지만 실제로는 함수 프로그래밍에 필요한 모든 것을 갖추고 있는 언어라고 할 수 있다. 함수 프로그래밍의 개념과 Python에서 함수 기술을 구현하는 방법에 대해 알아보자. |
|
|
|
2001년 3월 1일 (목) |
|
| |
SE Linux를 공개한다, Part 2 (한글) 미국 국가 안보국 (National Security Agency)은 최근 Linux의 보안 강화 버전(코드와 모든 내용)을 오픈 소스 커뮤니티에게 공개하였다. 이 글을 통해 security_av의 산출법을 분석하고 다른 SE Linux 보안 기능을 채택한 방법에 대한 검토가 이루어질 것이다. 코드에 대한 심층적 분석 역시 다루어 진다. |
|
|
|
2001년 3월 1일 (목) |
|
| |
사이트 재탄생 : gentoo.org XML, XSLT, Python 등의 기술을 사용하여 www.gentoo.org 웹사이트를 재구성했던 경험을 설명한다. 웹사이트 개편에 필요한 효율적인 접근방식을 배울 수 있을 것이다. 이 글에서 그는 사용자 중심의 액션 플랜을 만들고 임베디드 파이선 인터프리터인 pytext를 소개한다. |
|
|
|
2001년 3월 1일 (목) |
|
| |
MySQL 데이터베이스에서 C를 통한 SQL 문 실행하기 PostgreSQL과 마찬가지로, C, C++, Java 및 Perl을 포함한 여러 언어로 MySQL에 접근할 수 있다. MySQL의 광범위한 C 인터페이스를 사용하여 Neil Matthew와 Richard Stones는 "Professional Linux Programming"의 제 5장에서부터 MySQL 데이터베이스에서의 SQL 문의 실행 방법에 대해 설명한다. INSERT 같이 결과 데이터를 리턴하는 문과 UPDATE와 DELETE 같이 결과 데이터를 리턴하지 않는 문을 모두 살펴보게 된다. 그 다음에는 데이터베이스에서 데이터를 검색하는 간단한 프로그램도 작성한다. |
|
|
|
2001년 3월 1일 (목) |
|
| |
오픈 소스 소프트웨어의 보안 Natalie Whitlock는 이 글을 통해 폐쇄 보안 시스템의 허점과 오픈 소스 솔루션에 대해 이야기한다. 오픈 소스(open source)에 대한 Eric Raymond (The Cathedral and the Bazaar의 저자)의 견해, Microsoft FrontPage의 "백도어(back door)", peer review의 개념, 오픈 소스의 보안 문제점 등을 설명한다. 또한 오픈 소스 보안에 대한 이론과 실제의 차이점과 오픈 소스 시스템의 보안 실효성 및 대중성에 대한 IT 전문가들의 의견들도 다루었다. |
|
|
|
2001년 3월 1일 (목) |
|
| |
슬렉웨어 리눅스(Slackware Linux) 101 Joe Brockmeier는 Slackware의 init 시퀀스(sequence)를 연구하고 있다. 시스템을 초기화하는 방법, 다양한 런레벨(runlevel)의 종류, 개인 시스템에 맞춰 설정하기위해 디폴트 상태에서 서비스를 추가 또는 제거하는 방법을 이 글을 통해 설명한다. |
|
|
|
2001년 3월 1일 (목) |
|
| |
Linux 애플리케이션으로 데이터베이스 액세스 통합 전자 상거래와 써드파티 데이터베이스를 이용하는 복잡하고 동적인 웹 사이트를 개발하는데 유용한 툴인 MySQL을 설명한다. MySQL은 기능적으로 완전하고 빠른 멀티 쓰레드(multi-thread) SQL 서버이다. MySQL 시스템의 기본 구조에 대한 설명 이외에, 데이터베이스를 사용하는 웹 애플리케이션 개발을 쉽게 시작할 수 있는 Tcl과 C++의 간단한 예제가 제공된다. |
|
|
|
2001년 2월 1일 (목) |
|
| |
토큰링 카드를 이용하여 외부 LAN에 액세스 할 VMware 설정하기 이 글은 Vmware와 Token Ring 네트워크를 사용하기 원하는 리눅스 개발자들에게 유용한 정보를 제공한다. VMware를 사용하면 DBCS를 지원하는 Windows NT 같은 운영 체제를 구동 할 수 있고 플랫폼에서 개발한 Web 솔루션을 테스트하는 데에 도움이 된다. Windows 박스 없이도 Windows 브라우저를 사용하여 최근의 웹 코드를 테스트 할 수 있다는 것은 매우 실용적인 일이다. 광범위 LAN으로 네트워크가 가능하다는 사실은 각자 네트워크에서 솔루션을 테스트할 수 있다는 것을 의미한다. |
|
|
|
2001년 2월 1일 (목) |
|
| |
인터뷰: KDE 리그 Andreas Pour 회장 세인들의 관심을 집중시키며 지난 2월 26일 출시된 KDE(K desktop environment) 2.1은 안정된 브라우저와 앞으로 출시될 비즈니스 애플리케이션인 KOffice suite를 갖추고 기 존 1.0플랫폼 보다 나은 장점을 가지고 있다. Judy DeMocker는 KDE 리그 Andreas Pour 회장과 KDE 2.1릴리스(KDE 2.0의 제 2판)에 대해 이야기를 했다. 아울러 새로운 버전의 기술적인 세부사항을 포함하여 KDE가 어떻게 GNOME 에 대응할 수 있는지 알아본다. |
|
|
|
2001년 2월 1일 (목) |
|
| |
Common threads: 새로운 Linux 2.4 커널에서의 Software RAID, Part 2 새로운 2.4 커널이 나왔다. 여분의 PC에 Linux를 설치하여 그것의 기능에 대해 점검하기에 좋은 시기이다. 두 번에 걸친 시리즈를 통해 Linux 2.4 Software RAID를 설명한다. 이것은 멀티 디스크에 데이터를 분산시킴으로써 디스크의 성능과 신뢰도를 증가시키는 기술이다. 이 글에서 저자는 소프트웨어 RAID-1, 4 및 5로써 할 수 있는 것과 하지 못하는 것을 설명하며, 실제 제품 환경에서 이러한 RAID 레벨을 구현하는 방법도 설명한다. 이 글의 후반부에서는 RAID-1에서 고장 난 드라이브를 복구하는 시뮬레이션을 보여준다. |
|
|
|
2001년 2월 1일 (목) |
|
| |
Common threads: 새로운 Linux 2.4 커널에서의 Software RAID, Part 1 새로운 2.4 커널이 나왔다! 여분의 PC를 찾아내어 거기에 Linux를 설치하고, 새로운 2.4 커널의 기능을 살펴 볼 때가 된 것이다. Linux 2.4 Software RAID에 관한 두 부분으로 된 시리즈에서 저자는 새로운 기술을 소개한다. 이 기술은 다중의 디스크에 데이터를 배분해서 디스크의 성능과 안전성을 높이기 위한 것이다. 이 첫 번째 글에서는 Software RAID 셋업을 다루고(커널과 툴의 설치) RAID-linear와 RAID-0 볼륨을 생성하는 방법을 보여준다. |
|
|
|
2001년 2월 1일 (목) |
|
| |
Jacks: 오픈 소스 방식의 Java 호환성 테스트 Maya Stodte는 Jikes에서 고객용 회귀 테스트 제품군인 Jacks를 통해 UNIX 및 Windows 환경에서의 설치과정과 테스트 실행 및 테스트 결과 분석 방법을 설명한다. 또한 프로젝트 선임 연구원인 Mo DeJong이 제공한 코드 예제를 사용하여 제품군에 새 테스트를 추가하고 프로젝트에 참여한 여러 개발자들과 Jacks 및 Java 컴파일러 프로젝트(Java compiler project)를 스크립트 언어 기반으로 구현하는 방법에 대해 설명한다. |
|
|
|
2001년 2월 1일 (목) |
|
| |
GDB를 이용한 Linux 소프트웨어의 디버깅 Linux의 특징은 GNU 디버거(debugger) 또는 쉘의 gdb이다. gdb 사용으로 프로그램의 내부 구조 이해, 변수 값의 인쇄 및 소스 코드를 통한 정지점과 싱글 스텝을 설정할 수 있다. gdb는 프로그램 코드 상의 문제를 해결할 수 있는 강력한 무기이다. 이 글에서 gdb가 얼마나 멋지고 유용한지를 설명한다. |
|
|
|
2001년 2월 1일 (목) |
|
| |
Win4Lin으로 Linux에서 Windows 애플리케이션 실행하기 Grant Williamson는 지난 한 해 Linux에 대해 연구했다. 선호하는 운영체제를 사용하는 것과 일상 작업을 쉽고 완벽하게 수행할 수 있는 운영체제 중에 어떤 것을 사용할 것인 가에 대해 결정하기란 어렵다. Grant는 일상에서 매일 Linux 사용하는 것이 Linux를 배 우는 목표를 달성할 수 있는 유일한 방법이라고 말한다. |
|
|
|
2001년 2월 1일 (목) |
|
| |
배포판 제작하기, Part 3 이제 "배포판 제작하기"의 마지막편 이다. Gentoo Linux라는 나 자신의 배포 판 만들기를 어떻게 끝맺음 했는지, 어떻게 해서 Linux 세계를 떠나 FreeBSD로 갔다가 Linux 세계로 다시 돌아와, 새로운 전망을 가지고 Gentoo Linux 개발을 다시 시작하였는지를 설명하고 있다. Linux와 FreeBSD를 비교하고, 또한 현재의 Gentoo Linux 개발의 진척을 설명하고, 배포판에 대한 전망에 대해서도 다루었다. |
|
|
|
2001년 1월 1일 (월) |
|
| |
다중 OS 환경에서의 Linux의 유연성 필자는 Linux를 가장 좋아한다. 그러나 클라이언트용 또는 과거의 데이터 포맷에 액세스해야 하는 작업의 경우엔, 다른 운영체제가 필요하다. 사용중인 운영체제에 새로운 운영 체제를 설치한 다음 이전 운영 체제로의 switch over 과정은 매우 힘들다. 자주 사용하지 않는 하나의 운영체제를 위해 새 컴퓨터를 할당하는 것도 현실적이지 않다. 해결책은 부팅 시 메뉴를 통해 운영체제를 선택할 수 있도록 하는 것이다. 이 점에 있어서 Linux는 유연성을 가지고 있으며, 약간의 작업으로 동일한 컴퓨터에서 하나 이상의 운영체제를 사용할 수 있다. |
|
|
|
2000년 12월 1일 (금) |
|
| |
PHP 소개 Joe Brockmeier는 PHP의 기원, 기능 및 사용 가능한 플랫폼, PHP 스크립트 언어를 설명하고 있다. 또한 간단한 PHP 스크립트 예제를 통해 기본적인 PHP구문 및 용법을 설명한다. |
|
|
|
2000년 12월 1일 (금) |
|
| |
쉬워진 Linux 프린팅 지금까지 Unix/Linuxd에서의 프린팅은 제한이 많았다. 그러나 CUPS를 설치함으로써 범용 인쇄 솔루션을 갖추게 될 것이다. |
|
|
|
2000년 11월 1일 (수) |
|
| |
배포판 제작하기, Part 1 Linux를 경험해본 적이 있다면 각자 나름대로의 이야기 거리를 가지고 있을 것이다. 이 글은 Daniel Robbins의 Linux 이야기이다. 세 개의 시리즈 중 첫번째 순서에서는 필자가 Stampede Linux의 개발자가 된 경위와 Stampede를 떠나 Enoch라는 자신의 배포판을 제작하기 시작한 이유를 설명한다. |
|
|
|
2000년 11월 1일 (수) |
|
| |
Yacc와 Lex 시작하기 Lex와 Yacc는 UNIX에 있어서 매우 중요하고 강력한 툴이다. Lex와 Yacc에 능숙해지면 실제로 FORTRAN이나 C 컴파일러를 쉽게 작성할 수 있다. Ashish Bansal은 사용자가 자신의 언어와 그 컴파일러를 작성할 수 있을 만큼 이 툴들을 자세하게 설명한다. Ashish Bansal은 정규식, 선언, 매칭 패턴, 변수, Yacc 문법 및 파싱 코드를 다룬다. 마지막에는 Lex와 Yacc의 연결 방법을 설명한다. |
|
|
|
2000년 11월 1일 (수) |
|
| |
Cultured Perl: Perl로 애플리케이션 구성 파일 기반 구성은 수동식(hand-built) 메소드를 사용할 경우 파손되기 쉽다. Teodor Zlatanov는 AppConfig 모듈이 Perl 프로그램용 로컬 구성 기억장치(storage)를 어떻게 처리하고 네트워크를 통한 머신과 액세스 가능한 데이터베이스에 구성을 추척하는 방법에 대해 설명한다. |
|
|
|
2000년 10월 1일 (일) |
|
| |
배포판 제작하기, Part 2 첫번째 시리즈 에서는 필자가 어떻게 Stampede Linux 개발자가 되었으며 결국 왜 Stampede를 떠나 Enoch Linux배포판을 시작하였는지 말해주었다. 이 글에서 그는 Enoch 개발팀이 불꽃같이 빠른 컴파일러를 발견한 후에 일어난 이상한 사건들을 털어놓는다. |
|
|
|
2000년 10월 1일 (일) |
|
| |
DocBook 가이드 이 글에서는 DocBook의 정의와 DocBook을 이용한 간단한 문서를 생성하는 방법을 설명한다. Joe Brockmeier는 문서를 만드는 방법과 그 문서를 SGML-tools Lite를 사용하여 파싱한 후 HTML, PostScript, 평문 및 PDF 버전의 문서로 변환하는 방법을 다룬다. 또한, DocBook에 대한 추가 참고문헌, SGML-tools Lite와 다른 DocBook 툴들을 찾을 수 있는 자료를 제공한다. |
|
|
|
2000년 9월 1일 (금) |
|
| |
팁: 소스로부터 애플리케이션 업그레이드하기 여러분이 소스로부터 애플리케이션 컴파일 및 설치를 끝내고 제대로 작동되는 것을 확인했다. 새로운 버전의 소스를 받아서 업그레이드를 하고, 이 모든 작업을 순조롭게 끝내는 일만 남았다. 이럴 경우, 함정(pitfalls)에서 모면하려면 무엇이 필요한가? 그에 대한 몇 가지 방법을 제시한다. |
|
|
|
2000년 9월 1일 (금) |
|
| |
Charming Python: 커스 프로그래밍(Curse Programming) 어떤 Python 응용프로그램은 그랙픽 환경으로 인한 오버헤드 또는 복잡함을 배제한 대화형 사용자 인터페이스(interactive user interface)에서 가장 잘 작동한다. 예를 들어 대화형 텍스트 모드 프로그램(Linux/UNIX에서)에서는 Python의 표준 커스 모듈에 포장된(wrapped) ncurses 라이브러리가 필요한 전부이다. 이 글에서 David Mertz는 Python에서의 커스 용도를 설명할 것이다. 프론트엔드에서 Txt2Html 프로그램까지의 샘플 코드를 사용하여 커스 환경에 대해 설명한다. |
|
|
|
2000년 9월 1일 (금) |
|
| |
팁: 프롬프트 매직 쉘 프롬프트를 다양한 컬러와 풍성한 정보로 꾸밀 수 있는데 왜 지루한 표준 쉘을 고수하는가? Daniel Robbins는 각자가 원하는 방식으로 쉘 프롬프트를 만드는 방법을 설명한다. 뿐만 아니라 X 터미널의 타이틀바를 동적으로 업데이트 하는 방법도 설명한다. |
|
|
|
2000년 9월 1일 (금) |
|
| |
Cultured Perl: "Programming Perl" the 3rd Edition "Programming Perl" 제3판은 Perl 커뮤니티에 있어서 의미 있는 발전이다. 제2판 이후 4년 만에 출간된 제3판은 새로 릴리즈 된 5.6.0에 대한 정보가 추가되었으며, 분량도 제2판의 두 배 정도 이다. Teodor Zlatanov는 책의 소개 외에도 이 책이 Perl 5.6.0의 달라진 부분을 얼마나 잘 반영하고 있는지를 설명한다. |
|
|
|
2000년 9월 1일 (금) |
|
| |
Enhydra: 새로운 합작 모델 오픈 소스 애플리케이션 서버인Enhydra는 오픈 소스 커뮤니티에 있어서의 비지니스와 개발간의 협력의 본보기가 되고 있다. Maya Stodte는 Enhydra 제품이 어떻게 상업적 목표를 달성하고 Enhydra 개발자가 오픈 소스 사업 모델과 오픈 소스 개발 능력을 이용할 수 있는지 살펴본다. |
|
|
|
2000년 8월 1일 (화) |
|
| |
리눅스 커널 2.4, Part 2 리눅스 커널 2.4의 포트, 멀티미디어, 파일시스템, 버스 지원 등의 하드웨어에 대해 자세하게 알아본다. |
|
|
|
2000년 8월 1일 (화) |
|
| |
Linux 애플리케이션으로 데이터베이스 액세스 통합 대규모의 상용 제품을 Linux에 포팅하려면 기술력 및 인내력 뿐만 아니라 유모 감각도 필요하다. IBM DB2 팀원들의 이야기가 여러분에게 인사이트를 줄 수 있길 바란다. |
|
|
|
2000년 8월 1일 (화) |
|
| |
리눅스 커널 2.4, Part 1 (한글) TW Burger는 이 글을 통해 리눅스 사용자들이 새로운 커널 2.4에서 얻을 수 있는것이 무엇인지를 설명하고 향후 배포판에 대한 예견도 해본다. Part 1에서는 배포일을 평가하는 방법, 새로운 배포판의 일반적인 기능, 주요 하드웨어를 위해 어떤 기능이 확대 되었는지를 설명한다. |
|
|
|
2000년 8월 1일 (화) |
|
| |
Samba 도메인 컨트롤러 지원 (한글) Samba는 파일과 프린터 공유에 있어 뛰어난 제품이기도 하지만 그 이상의 것을 할 수 있다. 이 글은 Samba의 도메인 컨트롤러 기능 설치에 대해 설명하고 있다. Windows NT 도메인을 제어하고 로그인 요청을 처리하며 사용자 프로필을 저장할 수 있는 기술을 설명한다. 완전한 도메인 컨트롤러 지원을 제공하는 "the next generation" Samba 버전인 Samba_TNG 알파 버전에 대해서도 간략하게 살펴본다. |
|
|
|
2000년 8월 1일 (화) |
|
| |
Common Threads: POSIX 쓰레드, Part 2 POSIX 쓰레드는 코드의 반응과 성능을 향상시키는 좋은 방법이다. 세 부분으로 이루어진 시리즈의 두 번째인 이 글에서 Daniel Robbins는 뮤텍스라는 작은 것을 사용하여 쓰레디드 코드(threaded code)에서 공유 데이터 구조의 무결성을 보호하는 방법을 알려준다. |
|
|
|
2000년 8월 1일 (화) |
|
| |
New Amiga SDK New Amiga, Inc.는 최근 Linux용 최신 SDK를 발표했다. Daniel Robbins는 SDK를 통해 새로운 Amiga가 Linux에 어떻게 긍정적인 영향을 줄 수 있는지 설명하며 SDK 소유자로서 일부 설치 관련 사항을 전해준다. |
|
|
|
2000년 8월 1일 (화) |
|
| |
Common threads: Samba 개론, Part 3 에서 필자는 Samba를 세팅하는 과정을 설명하였다. 이제 원하는 모든 것을 할 수 있도록 Samba를 설정하는 방법을 알아보자. |
|
|
|
2000년 7월 25일 (화) |
|
| |
Common thread : Samba 개론, Part 3 (한글) 이전글에서 필자는 Samba를 세팅하는 과정을 설명하였다. 이제 원하는 모든 것을 할 수 있도록 Samba를 설정하는 방법을 알아보자. |
|
|
|
2000년 7월 1일 (토) |
|
| |
Common threads : Samba 개론, Part 2 이전 글에서 필자는 Samba의 기능에 대해 기술하였다. 이제 Samba를 시스템에서 실행시키기를 시도한다. 이 글에서 저자는 Samba(2.0.7 버전)가 사용자 환경에 적합한 작동을 위해 Samba 컴파일, 설치 및 초기 구성 프로세스를 검토할 것이다. |
|
|
|
2000년 7월 1일 (토) |
|
| |
POSIX
쓰레드 POSIX (Portable Operating System Interface) 쓰레드는 사용자의 코드 반응성 및 성능
향상에 필요한 방법이다. Daniel Robbins는 사용자의 코드에 쓰레드를 적용하는 방법을 제시한다. 감춰진 많은 세부사항을 다루기 때문에
이 글의 시리즈를 모두 읽은 후에는 스스로 멀티 쓰레드 프로그램(multithreaded programs)을 만들 수 있을
것이다. |
|
|
|
2000년 7월 1일 (토) |
|
| |
Charming Python: 웹 기반 필터링 프록시 David Mertz가 Python의 프로그래밍 테크닉을 설명하기 위해 작성한 퍼블릭 도메인(public-domain) 프로젝트인 Txt2Html에 대해 소개한다. Txt2Html은 사용자 대신 웹 기반 문서를 읽고 사용자의 브라우저에 맞게 수정된 페이지를 제공하는 "웹 기반 필터링 프록시"이다. 따라서 Txt2Html은 CGI 프로그램으로 실행되고 웹 리소스 밖으로 쿼리하며 정규식(regular expressions)을 사용하여 이런 일을 수행한다. David는 이들 부업무(subtask)의 일반 목적을 하나씩 단계별로 설명한다. |
|
|
|
2000년 7월 1일 (토) |
|
| |
Unix 플랫폼에서 COM 기술 사용하기 COM/DCOM 기술을 이용하면 Windows 컴포넌트의 개발(developing) 및 분산(distributing)이 쉬워진다. 하지만 그와 같은 컴포넌트가 Unix 플랫폼상에서 개발되어야 할 때 여러분이라면 어떻게 할 것인가? |
|
|
|
2000년 6월 1일 (목) |
|
| |
Linux clustering cornucopia Rawn Shah serves as your expert guide through the maze of both open- and closed-source clustering solutions available for Linux today. |
|
|
|
2000년 5월 26일 (금) |
|
| |
JFS 레이아웃 이 글에서는 디스크상의 JFS(Journaled File System) 레이아웃 및 디스크상의 레이아웃(on-disk layout) 구조를 사용하여 확장성, 신뢰성 및 성능 달성에 필요한 메커니즘을 설명한다. 여기서는 이러한 구조들을 조작하기 위해 사용되는 정책과 알고리즘들에 대해, 그리고 파일 시스템의 연산능력을 높이기 위해 JFS가 어디에서 파일 시스템 전체에 B+ 트리를 사용하는지를 배우기로 한다. |
|
|
|
2000년 5월 1일 (월) |
|
| |
적절한 서버측 스크립트 언어 선택하기 Perl, PHP, Python, Tcl 및 Java 서블릿과 같은 인기 있는 다섯 가지 스크립트 툴(script tools)을 동일한 6개의 일반적인 서버 사이드(sever-side) 태스크에 적용시켜 비교해 본다. 각각의 문법(syntax)을 나란히 조사하고 어떻게 각 언어가 특정한 태스크를 처리하는지에 대해 평가 할 수 있다. 서버측 스크립트 언어를 사용해본 적이 없거나 이들 언어 중 일부만 사용해 보았다면 이들 언어들이 어떻게 닮았는지 확인할 수 있을 것이다. 이미 한 언어에 익숙해 있다고 하더라도 가용성, 기능성, 그리고 가독성에 있어서 다른 언어들이 어떤 특징을 갖는지 파악할 수 있을 것이다. |
|
|
|
2000년 5월 1일 (월) |
|
| |
SDL의 사용, Part 4 : lex 및 yacc Linux 프로그래머에게 유용한 툴인 lex와 yacc에 대해 살펴보겠다. 이 툴을 사용하면 SDL 기반 Linux 게임인 Pirates Ho!에서 사용된 스크립트 언어와 GUI 프레임웍(framework)을 쉽게 작성할 수 있다. |
|
|
|
2000년 5월 1일 (월) |
|
| |
오픈 소스에 대한 전망 오픈 소스 주창자이자 전문가인 Brian Behlendorf, Sheila Harnett, Mark Stone, Adam Goodman등이 오픈 소스와 소프트웨어에 대한 토론을 소개한다. |
|
|
|
2000년 4월 1일 (토) |
|
| |
SDL의 사용, Part 3: 그래픽 디자인 Sam Lantinga와 Lauren MacDonell은 현재 스크래치에서 작성 중인 Linux용 롤플레잉 게임인 "Pirates Ho!"의 스토리와 그래픽 디자인을 개발 중이다. 여기에 나온 부분은 그들의 일지에서 가져온 내용으로, 저자는 스토리 개발 과정과 스토리의 영감을 얻은 부분에 대해 설명하고 있다. 또한 게임에 사용되는 이미지를 디자인한 방법에 대해서도 자세하게 설명하고 있다. |
|
|
|
2000년 4월 1일 (토) |
|
| |
SDL의 사용, Part 2 : "Pirates Ho!" 코드 작업 지난 달 Sam Lantinga와 Lauren MacDonell은 "Pirates Ho!"의 코드 작업과 그래픽 디자인 작업을 시작하였다. 이 글에 실린 부분은 롤플레잉 게임을 제작하면서 그들이 작성한 일지의 내용으로, C++과 다양한 오픈 소스 툴을 사용하는 게임의 코드 작업의 첫번째 단계를 설명한다. Sam은 또한 객체 캐시, 에러 처리, 기능 로깅(logging) 등에 대해서도 설명한다. |
|
|
|
2000년 3월 1일 (수) |
|
| |
파티션 구성 방법 적절하게 파티션을 구성하는 것은 매우 흥미롭고 보람된 일이 될 수 있다. 여기의 팁 모음은 그러한 부분들 현명하게 사용할 수 있도록 도와줄 것이다. |
|
|
|
2000년 3월 1일 (수) |
|
| |
파티셔닝 작업: /home 옮기기 이 글에서 필자는 실행중인 시스템에서 파티션 배치를 변경하는 방법을 보여준다. 또한 정지시간을 최소화하고, 중대한 실수를 피하는 몇 가지 요령을 다룰 것이다. /home을 다른 파티션으로 이동하는 방법도 소개한다. |
|
|
|
2000년 3월 1일 (수) |
|
| |
오픈 소스 옹호론 오픈 소스 커뮤니티에서는, 세 종류의 옹호론자들이 있고, 이들 각각은 서로 다른 자신만의 목표와 전술이 있다는 것은 일반적으로 알려진 사실이다. 오픈 소스 지지자들의 리더 격인 Eric Raymond, Russell Pavlicek, Barry Caplin의 주장과 그들이 쓴 글(Raymond와의 독점 인터뷰도 포함)을 바탕으로, 각각의 지지자 그룹을 상세히 들여다보기로 한다. |
|
|
|
2000년 2월 2일 (수) |
|
| |