inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Windows 시스템 프로그래밍 - 기본

비동기 파일 입/출력 (Event 방식)

동기와 비동기

해결된 질문

208

도롱뇽YouTube

작성한 질문수 2

0

  1. 다중 코어 환경에서는 os가 스레드를 처리할때 동시성과 병렬성을 무조건 다써서 처리하나요? 친화력 조절을 안한다면..

  2. 1번이 그렇다라면 코어가 4개(스레드 4개)인 컴퓨터에서
    하나의 프로세스에서 3개의 스레드가 추가로 실행되어 총 4개의 스레드가 존재할때 추가된 3개의 쓰레드가 각각 2초짜리 입력 요청을 하나의 파일에 요청한다고 할때
    cpu (idle~적당히)
    동기 : 최소 2초 ~ 최대 6초 (block)
    비동기 : 최소 2초 ~ 최대 6초가 맞을까요?
    이렇게 볼때 비동기가 동기보다 좋은 이유가 block 되지않고 코드를 더 실행하는것 하나 뿐인가요? 이후에 다른 작업들이
    더 많아지면서 비동기가 빛을 발하게 되는건가요?

c system-programming vc++

답변 1

1

널널한 개발자

  1. '무조건 다 쓴다'가 아니라 반드시 고려해야 합니다. 그리고 이는 친화력 조절과는 무관합니다.

  2. 파일 입/출력과 CPU 사용은 별개의 문제입니다. 물론 입/출력 자체가 CPU 자원을 필요로 하는 연산이긴 합니다만 입/출력 통제와 관련한 것은 OS수준에서 입/출력이 서로 뒤섞여 엉키지 않도록 관리하는 과정에서 발생합니다. 그리고 동기/비동기와는 관련이 없습니다. 비동기 입출력을 사용해서 얻는 장점은 OS가 빠른 스케줄링을 보장해 성능을 높일 수 있다는 것과 스레드가 블록되어 처리 흐름을 막지 않기 때문에 스레드 개수가 적어도 되기 때문입니다. 따라서 스위칭이 덜 발생하고 효율적으로 연산 할 수 있습니다. 참고하시기 바랍니다.

세마포어 개수에 따른 스레드 점유상태

0

61

2

메모리 맵과 비동기 입/출력 조합 #2 수업내용에 질문있습니다.

0

95

2

힙 메모리 블럭 관리 방법 질문

0

97

2

MapViewOfFile 원리 관련 질문있습니다

0

102

1

가상 메모리 시스템 영역 구분

0

96

2

스택 크기 결정 단계

0

75

2

시스템프로그래밍-응용편

0

130

2

바이트와 관련된 유튜브 영상을 못 찾겠어요ㅠㅠ

0

94

2

파일 복사에 관한 질문입니다

0

114

2

세마포어 예제에 대한 질문이 있습니다.

0

110

2

메모장 쓰레기값 ?

0

133

2

64 bit 운영체제라면 가상메모리가

0

180

2

alertable Wait 상태 질문있습니다

0

226

1

GetCurrentDirectory 관련 질문

0

169

2

세마포어 예제중 형변환에 대한 질문

0

162

2

강사님 dll 지연로딩 관련하여 질문 드립니다

0

205

3

선장님 , _beginThreadEx() 함수 원리는 어디서 정보를 얻을 수 있을까요?

0

286

2

메모리 맵 강의 예제의 결과가 이상합니다.

0

227

1

강사님 파일입출력(Callback함수)와 관련하여 질문 드립니다.

0

348

2

dll 명시적 링크 오류 (원인 및 해결 방법이 필요 합니다)

0

966

2

static 영역의 rw 가능한 곳은 어떤 데이터가 담기는지 궁금합니다.

0

223

1

TerminanteProcess 와 관련하여 질문 드립니다.

0

172

1

강사님 스레드 관련 질문 드립니다.

0

226

1

강사님 메뉴얼 중 이것도 궁금해서 여쭤봅니다.

0

210

2