리눅스 시스템 프로그래밍 - 이론과 실습

리눅스 시스템 프로그래밍 - 이론과 실습

(16개의 수강평)

383명의 수강생
33,000원
지식공유자 · ProgCoach4U
50회 수업· 총 13시간 2분수업
평생 무제한 시청
수료증 발급 강의
수강 난이도 초급, 중급
Mk H 프로필

2번 멀티 쓰레드 모델과 3번 I/O Multiplexing 차이 Mk H 22시간 전

I/O Multiplexing api를 사용하면 각각의 파일들을 감시하는 쓰레드가 생성되는 건지 궁금합니다. 만약 fd가 n개면 각각의 fd를 담당하는 쓰레드 n개가 생성되는 건가요?

아니면 쓰레드 생성없이 n개의 fd를 감시할 수 있는 건가요?

1
Mk H 프로필

프로그램 동작 질문입니다! Mk H 1일 전

while문 안에서 read로 fd에 있는 이벤트들을 읽는데 이때 프로세스가(아직 이벤트가 발생하지 않았음에도) 종료되지 않고 기다리는 것은  inotify_init()할 때 플래그를 주지 않아 blocking으로 생성되었기 때문인가요?

그리고 inotify_add_watch함수 호출하면 해당 디렉토리를 감시하는 새로운 쓰레드를 생성하는 건가요?

마지막으로 fd가 blocking으로 열렸을 때 read가 0을 반환할 수 있나요? 그러니까 blocking으로 열리면 read에서 값이 생성될 때까지 기다리는데 생성된 값의 바이트 수가 0일 수 있나요?

좋은 강의 감사드립니다!!

1
rjsdud582 프로필

간단한 fd에 관한 질문 rjsdud582 4일 전

5:25 경에, 모든 fd들은 프로그램이 종료되면 자동으로 닫아준다고 말씀하셨는데,  그럼 지금까지 프로그래밍 해오면서  작성해준 close(fd); 는 그렇게 필수적인 것은 아니라는 건가요? 

1
이소진 프로필

fatal error 이소진 11일 전

fatal error : studio.h 그런 파일이나 디렉토리가 없습니다. 라는 에러가 뜹니다...

강의에서 보이는 것과 똑같이 코딩했는데 왜그럴까요 ㅠㅠ

1
rycbar 123 프로필

Makefile rycbar 123 3달 전

inflearn에 올려져있는 Makefile 파일을
가상머신에서 어떻게 다운로드받아서 사용하나요?

3
장원일 프로필

sched_getaffinity api man page에서 thread 의미 장원일 4달 전

description부분에서

A thread's CPU affinity mask determines the set of CPUs on which it is eligible to run.  by dedicating one CPU to particular thread. is is possible to ensure maximum execution speed for that thread.

1. 여기서 thread는 프로세스의 thread인가요? 그렇다면 

위 설명에 특정 스레드에 하나의 cpu를 할당해서, 하나의 스레드의 실행속도를 최대화할 수 있는 보장을 한다라고 설명하고 왜 첫번째 인자로는 특정 스레드id가 아닌 process id를 넘기는거죠? 

2. 만약 1cpu 4코어 8스레드라면 위에서 설명하는 CPU는  1cpu를 의미하는 거죠? 

1
장원일 프로필

왜 child process는 exit status가 2죠? 장원일 4달 전

child process 코드 영역에서 execl()이 fail하게되면 

printf("execl() fail\n");

return -1이 실행되는것으로 예측하고 parent측에서 exit_status -1을 출력할 줄 알았는데 2가 되는 이유를 모르겠어요 

4
OMG 프로필

main 함수를 종료 할 때 반환값에 따른 차이가 존재하나요? OMG 4달 전

일반적인 프로그램에서 main 함수는 return 0을 함으로써 종료하는데,

강의 중에 에러 상황에서는 -1을 반환하면서 프로그램을 종료시키는데

0과 -1의 반환 값의 차이로 인해 그것을 활용하는 무언가가 존재하기 때문에 이와 같은 방식을 사용하는 것인지 궁금합니다.

1
장원일 프로필

파일 lock에 관해서 장원일 4달 전

./flock ex 혹은 ./flock sh 해서 lock을 걸어둔 상태에서 다른 터미널 창에서 cat lockfile하면 출력이 가능하던데  왜 가능한건지 모르겠습니다.

2
장원일 프로필

mmap 관련 궁금점. 장원일 4달 전

1. 파일을 메모리상에 매핑하는 이 함수가 언제 유용하게 쓰이는지 궁금합니다.

2. 프로그램안에서 파일을 열면 파일을 닫듯이, 메모리에 매핑하고 unmap해줘야하는 건가요? 그냥 map하고 종료되면 메모리상에 매핑된 파일을 모두 자동으로 unmap되는 건가요?

1
OMG 프로필

다음 강좌로 혹시 OMG 4달 전

이번 강의 내용을 바탕으로 한 (+추가 이론?) 프로젝트 단위의 강좌 개설이 가능할까요..?!

예를 들어, FTP or 프록시 같은거 직접 자료구조 구현하면서 하는 정도면 좋을 것 같아서요!

바쁘시다고 들었는데 하시는 책 집필 끝나고....

1
장원일 프로필

byte stream의 의미 장원일 5달 전

byte stream의 의미가 정확히 뭔지 모르겠습니다.

1
꿀렁꿀렁 프로필

논블로킹 모드 관련 질문입니다. 꿀렁꿀렁 6달 전

저의경우 fcntl 바이너리를 1회 실행후 2회 실행하여도 강사님처럼 논블로킹 모드로 유지가 안되는데, 이건 쉘의 특성인가요? 현재는 저는 CentOS 에서 실습하고 있습니다.

1
꿀렁꿀렁 프로필

하드링크 및 소프트링크 관련 질문드립니다. 꿀렁꿀렁 6달 전

안녕하세요.

원본파일 hello 와 하드링크 파일인 hard 그리고 소프트링크 파일인 soft 가 존재하는 상황에서

원본파일인 hello 파일을 삭제했다고 가정합니다.

여기서 의문점이 하나 생겼는데, hello 가 지워졌다고 하더라도, hard 에 의해서 원본 데이터는 디스크상에 보존이 되고 soft 의 inode 값은 별도로 관리가 되는데,

이런 경우 원본파일이 삭제되더라고 soft 파일은 디스크상의 파일을 가리켜야 하는게 맞지 않는건가요~?

답변 부탁드립니다. 감사합니다~

1
꿀렁꿀렁 프로필

하드링크와 소프트링크 설명하시는 그림 예제에서 꿀렁꿀렁 6달 전

그림상으로 봤을때, 소프트링크의 inode 가 빨간색 디스크 파일을 가리켜야 하는게 맞지 않을까요?

파란색 파일을 가리키도록 도안이 그려져 있어서 문의드려봅니다.

1
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스