반응형

전체 글 288

[Linux] 파일 관련 API 리스트

API 볼륨 statvfs 디렉토리 opendir closedir readdir mkdir rmdir rename telldir seekdir rewinddir 쿼타 setquota getquota deletequota 파일 open close creat read write symlink lseek64 fsync link unlink readlink 속성 truncate ftruncate utime utimes futimes lutimes stat fstat lstat chown fchown lchown chmod fchmod lchmod 확장속성 getxattr lgetxattr fgetxattr setxattr lsetxattr fsetxattr listxattr llistxattr flistxatt..

[Linux] 유닉스 소켓 (unix socket) 을 이용한 파일 디스크립트 보내기/받기(file descriptor send/recv) - 다른 프로세스로 디스크립트 전송/공유

리눅스는 유닉스 소켓을 이용하여 프로세스끼리 파일 디스크립트를 보내주고 받을 수 있다.아래 예제는 뼈대만 존재한다. 예외나 기타 처리는 없다.뼈대에 살을 붙이는 형태로 사용 할 것이다.자세한 설명은 나중에.. 시간이 있다면... sender.c - 이 예제에서는 sender 프로세스가 자신의 표준출력 디스크립트를 전송 #include#include#include#include#include#include int main(int argc,char **args){ int sc; struct sockaddr_un addr; int z; int fd; sc = socket(PF_LOCAL,SOCK_STREAM,0); if(sc < 0) { return -1; } memset(&addr,sizeof(addr),0..

윈도우 8 개발 / WPF / XAML / C# 관련 사이트

http://msdn.microsoft.com/ko-kr/vstudio/dd919145 - MSDN C# 관련 http://msdn.microsoft.com/library/windows/apps/ - Windows 스토어 앱 구축 학습 http://www.sqler.com/index.php?mid=bSilverlight&page=3 - 실버라이트 강좌(XAML 위주) http://dotnetmvp.tistory.com/category/WPF - WPF 강좌http://samples.msdn.microsoft.com/Silverlight/SampleBrowser/index.htm#/?sref=access_keyframe_collection - 실버라이트 애니메이션 예제들이다. 웹브라우저에서 바로 확인 할 ..

시간 (time) 함수에 대한 고찰 mktime , strptime, time zone , UTC , KST

시간 함수를 사용하면서 가장 힘들었던 점은 UTC , GMT 와 timezone 에 따른 시간의 편차이다.1970년 01월 01일 00시 00분 00초 를 기점으로 흐르는 시간을 epoch time 이라고 한다.바꾸어 말하면 0 epoch time 은 1970년 01월 01일 00시 00분 00초 이다. strptime 함수는 날짜와 시간으로 이루어진 문자열을 struct tm 이라는 구조체로 바꾼다. struct tm{ int tm_sec;/* Seconds.[0-60] (1 leap second) */ int tm_min;/* Minutes.[0-59] */ int tm_hour;/* Hours.[0-23] */ int tm_mday;/* Day.[1-31] */ int tm_mon;/* Month...

[C,C++] printf 사용시 포맷(fotmat) 지정에 관해 -(플래폼에 종속적이지 않은 printf)

printf 함수를 사용하다보면 난감한 상황에 봉착한다.int64_t 의 경우 장비에 따라서 long long int, long int 등 기본형을 다르게 가진다.또는 void * 즉 포인터형이 32비트 장비에서는 32비트 크기이고 , 64비트 장비에서는 64비트이다.이런 경우 printf 의 포맷을 무엇으로 지정해야되는 고민스러울 때가 있다. 매크로 조건식으로 분기를 타게해야되나 sizeof 함수로 분기를 타게 해야되나. 고민스러울때가 많다.이때 #include 를 활용해보자 만약 int64_t 를 정수로 출력해야된다면printf("%" PRId64 , val)만약 int64_t 를 16진수로 출력해야된다면printf("%" PRIx64 , val)만약 void * 즉 포인터(주소) 값을 정수 출력해야..

[Linux] RPM package(RPM 만들기 , RPM 패키징) 이모저모

참고 사이트 ftp://ftp.muug.mb.ca/mirror/redhat/redhat/linux/6.2/en/doc/HOWTOS/translations/ko/html/RPM-HOWTO.html#toc6 http://www.rpm.org/max-rpm/index.html http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/index.html 아래의 내용은 spec 파일 샘플 , RPM 만들때 필요한 사항들만을 적었다. 내용은 자세하지 않으므로 자세한 사항은 위의 참고 사이트를 통해 확인하기바란다. rpm spec 파일 Name: test Summary: Test Program Version: 0.1 Releas..

[LINUX] Library constructor and destructor functions (라이브러리 생성자, 소멸자 기능 _init , _fini)

리눅스 라이브러리의 생성자와 소멸자를 등록하는 방법은 2가지가 있다.라이브러리 생성자나 소멸자는 라이브러리 전역에서 쓰이고 한번만 초기화 되어야 하는 객체에 사용하라. 예를 들어 전역적으로 쓰이는 변수, mutex 등을 말한다. 추천 void __attribute__ ((constructor)) my_init(void) void __attribute__ ((destructor)) my_fini(void) 생성자(constructor) 는 dlopen 이 반환되기 전이나 혹은 라이브러리가 로드 될 때에 실행된다. 소멸자(destructor) 는 dlclose 가 반환되기 전에 혹은 exit()나 main() 이 끝날때 실행된다.중요 : 공유 라이브러리는 컴파일시 -nostartfiles 혹은 -nostdl..

반응형