반응형

전체 글 2934

표준 입출력 - FILE 구조체

표준 입출력 함수에서는 작업할 파일에 관한 정보를 FILE 구조체 형식으로 기억합니다. FILE 구조체는 C 컴파일러에 따라 조금씩 차이가 있지만 파일 기술자, 버퍼 시작 주소, 버퍼에서 입출력할 위치 주소, 작업 관련 플래그 등을 제공합니다. struct _IO_FILE{ int _fileno; //파일 기술자 char *_IO_read_ptr; //읽기 버퍼에서 현재 읽을 위치 주소 char *_IO_read_base; //읽기 버퍼의 시작 주소 char *_IO_read_end; //읽기 버퍼에 처리할 데이터가 있는 영역의 끝 주소 char *_IO_write_ptr; //쓰기 버퍼에서 현재 기록할 위치 주소 char *_IO_ write _base; //쓰기 버퍼의 시작 주소 int _flags;..

표준 입출력 - 버퍼 및 버퍼링 정책 설정

C언어 표준 라이브러리에서 제공하는 입출력 함수들은 평균적으로 성능이 높게 입출력할 수 있게 고안하여 입출력 시스템 호출에 관해 깊은 지식과 경험이 없는 이들도 충분히 높은 성능을 갖게 프로그래밍할 수 있습니다. 물론 C언어 표준 입출력 라이브러리에서는 개발자가 버퍼링 정책을 변경하거나 버퍼를 설정하는 몇 가지 함수를 제공하고 있습니다. /*********************************************************************** * ex_change_buffering.c * * example source – print string(print character and sleep) * ************************************************..

1인당 GDP 2만9000불, 우리의 평균 수입은?

1인당 GDP 2만9000불, 우리의 평균은? 안녕하세요. 언제나 휴일, 언휴예요. 2017년 발표에 따르면 우리나라의 1인당 GDP는 2만 9천불입니다. 4인 가족 기준으로 볼 때 대략 1억 2천만원 정도로 볼 수 있습니다. 하지만 여기에서 빼야 할 부분이 있어요. 실제 가계로 들어오는 부분을 계산하려면 노동소득 분배율을 적용해야죠.발표에 따르면 노동소득 분배율이 대략 70%정도라고 하네요. 노동소득 분배율을 적용하면 8천 4백만원이네요. 하지만 이 값은 평균값이지 중간값은 아닙니다. 중간값은 이보다 상당히 낮을 것이며 6천만원 수준으로 예상합니다. 2017년 통계청 자료를 보면 도시근로자의 4인 가족의 년간 수입 평균은 약 6천 8백 50만원이라고 하네요.그리고 4인 가족의 년간 수입 중간값은 약 5..

파일입출력 - 버퍼링

리눅스에서는 파일 입출력을 할 때 물리적인 파일에 조회 및 기록의 횟수를 최소화하여 성능을 높이기 위해 버퍼링 정책을 사용하고 있습니다. 만약 write 호출로 데이터를 쓰기 명령을 전달하면 해당 파일 작업을 위한 버퍼에 기록을 해 두었다가 정책에 따라 특정 시점에 물리적인 파일에 기록을 수행합니다. 리눅스에서 제공하는 버퍼링 정책에는 버퍼가 꽉 차면 물리적인 파일에 기록하는 FULL BUFFERING과 꽉 차거나 개행문자가 오면 처리하는 LINE BUFFERING, 버퍼를 사용하지 않는 NULL BUFFERING 정책을 제공하고 있습니 디폴트 버퍼링 정책은 FULL BUFFERING이며 char 장치 파일에 관한 작업은 LINE BUFFERING 정책을 사용합니다. 그리고 오류를 출력하는 stderr ..

표준 입출력 라이브러리

파일 입출력에 관한 system 호출(open, close, write, ...)을 사용하여 응용 프로그램을 제작하는 비용을 줄일 수 있게 ANSI C 표준기구에서는 표준 입출력 라이브러리를 제공합니다. 표준 입출력 라이브러리는 C언어 창시자인 데니스리치에 의해 1975년에 만들어졌으며 지금도 거의 개발 초기 모습을 유지하고 있습니다. 표준 입출력 라이브러리는 개발자 편의성과 효율성이 높은 파일 입출력을 제공하기 위해 만들었습니다. 시스템 호출을 이용하여 파일 입출력 작업을 하면 시스템 호출할 때마다 커널을 통해 입출력을 수행하여 시스템 효율이 떨어질 수 있습니다. 표준 입출력 라이브러리를 이용하여 파일 입출력 작업을 하면 파일 스트림 버퍼를 이용하여 시스템 호출 횟수를 줄여줍니다. 예를 들어 write..

파일 삭제, unlink, remove, rmdir 함수

리눅스 시스템에서는 파일을 삭제하는 시스템 호출로 unlink, remove, rmdir 함수를 제공하고 있어요. unlink는 연결 계수를 1 감소하는 시스템 호출이고 rmdir은 비어있는 디렉토리를 지울 때 사용하는 시스템 호출입니다. remove는 표준 입출력 라이브러리 함수로 입력 인자로 전달하는 이름이 파일일 때는 unlink와 같고 디렉토리일 때는 rmdir과 같습니다. /********************************************************************** * ex_unlink.c * * exmple source – test unlink * ***************************************************************..

실종한 철학을 찾습니다.

실종한 철학을 찾습니다. 안녕하세요. 언제나 휴일, 언휴예요. 박사 학위를 보면 전공에 관계없이 Philosophiæ 라고 쓰여져 있어요. 철학박사라고 쓰여 있는 것이죠. 이는 모든 분야의 기초 학문으로 철학을 배우기 때문에 부여진 것이예요. 그런데 우리는 철학을 배우나요? 우리나라에서는 언제부터인가 철학을 찾아보기 힘들어졌어요. 소크라테스가 말했듯이 철학은 "지혜를 향한 사랑"이며 본질을 파악하고자 하는 논리적 학문이죠. 그리고 철학은 지도계층이 따라야 할 도덕적 윤리를 포함하고 있어요. 그런데 우리 나라에서는 지도 계층이 따라야 할 도덕적 윤리는 사라지고 국민윤리가 생긴 것이죠. 지금은 이름이 바뀌었지만요. 우리는 주변에 누군가가 술집을 운영한다고 비난하지 않아요. 하지만 국무총리 후보가 술집을 여러..

스펙(SPEC)은 채용 정보에 직무능력을 상세히 기술하는 것

스펙(SPEC)은 채용 정보에 직무능력을 상세히 기술하는 것 안녕하세요. 언제나 휴일, 언휴예요. 요즘 많은 이들이 스펙(SPEC) 때문에 쓸 데 없는 시간과 비용을 투자한다고 하소연을 하더군요. 그런데 지금 사회에서 얘기하는 SPEC에 관한 문제는 결국 SPEC이 해결 방안이예요. SPEC은 설명서, 설명하다. 기술서, 기술하다. 라는 사전적 의미를 지니고 있어요. 지금 많은 곳에서 얘기하는 채용의 문제점 중에 하나인 스펙(SPEC)은 실제 업무에 필요하지 않는 능력까지 요구하여 이를 갖추는 데 시간과 비용이 들어간다는 것입니다. 왜 이런걸까요? 제일 큰 이유는 채용공고가 실제 뽑고자 하는 사람이 갖추어야 할 직무능력을 자세히 기술하지 않고 있다는 점입니다. 이처럼 채용공고가 두리뭉실하면 구직을 하는 ..

우리는 잘 속이는 사람을 뽑기 위해 노력하는 것은 아닌가?

우리는 잘 속이는 사람을 뽑기 위해 노력하는 것은 아닌가? 안녕하세요. 언제나 휴일, 언휴예요. 이미 어느 포털 사이트에서 순진이라는 단어로 검색을 하면 "세상 물정에 어두워 어수룩함"이라는 뜻 풀이도 함께 나옵니다. 이는 이미 우리가 살고 있는 사회가 순박하고 진실한 사람이 손해를 보는 사회의 모습을 갖고 있음을 반영하는 것이겠죠. 회사에서 사람을 뽑을 때도 회사에서는 마치 자신들을 잘 속이는 사람을 뽑기 위해 무진장 노력하는 것 같아요. 아직도 회사에 입사 지원할 때 를 작성하는 곳은 많죠. 요즘은 자기 소개서를 자소설이라고 부르더군요. 그리고 소설을 쓸 수 있는 능력이 부족하다보니 외부 업체에 의뢰를 하기도 하구요. 면접관이 면접온 이에게 왜 자기 회사에 지원했는지 지원 동기를 물을 때 과연 자신의..

자식의 성공을 요구하지 말고 행복한 삶을 지지하자.

자식의 성공을 요구하지 말고 행복한 삶을 지지하자. 안녕하세요. 언제나 휴일, 언휴예요. 우리는 여러 곳에서 "성공하기 위해 해야 할 것들", "성공한 이들의 생활" 처럼 이라는 단어를 좋아합니다. 특히 자기 자식에게는 한 삶을 살 수 있기를 바랍니다. 실제 바라는 정도가 지나쳐서 을 위한 생활에서 어긋나지 않도록 많은 판단을 대신해 주고 있죠. 그런데 왜 우리는 을 이상향처럼 바라보는 것일까요? 아마도 하면 행복해 질 수 있을 것이라는 상상 때문이라고 생각해 봅니다. 다시 말해서 우리가 진정으로 원하는 것은 이란 것이예요. 그렇다면 자식에게 을 요구하는 우리는 진정 자식들이 한 삶으로 걷을 수 있게 도와주는 것일까요? 이라는 단어 속에는 경쟁이라는 살벌한 단어가 숨어있습니다. 이미 유치원 다니기 전부터..

반응형