파일 IO가 OS 미치는 부분에 대한 궁금증..(윈도우긴 합니다만 리눅스도 궁금하네요)

mosad34의 이미지

안녕하세요...

한가지 궁금한 부분이 있어서 질문을 올립니다.

현재 작업은 윈도우 환경이라서 KLDP에 올리는것이 맞지 않다고는 생각하나..딱히 고수분들의 의견을

들을만한 공간이 마땅치가 않아서요..

상황은 이렇습니다.

프로세스 하나가 여러개의 Thread를 발행하여 각 Thread들이 열심히 연산작업을 하고 있습니다.

이때 휘발성으로 사라지는 Thread하나가 발생하면서 약 500Mb정도의 파일을 CreateFileMapping방법으로

파일을 기록하게 됩니다.

근데 이때 연산처리를 하고 있는 Thread들에서 지연이 발생되더라고요...

음..이게 CPU연산과 File I/O간에 연결관계의 부족한지라... 잘 이해가 안되더라고요..

File I/O처리가 동기식으로 뭔가 처리하고 있다치면 Thread간 context switching 이 발생되는것이 아니라.

프로세스 단위로 context switching 발생하여 제 프로세스가 딜레이가 발생되어 Thread의 연산효율이 떨어지는것인지...

이렇게 생각하된 이유는 C드라이브에 파일을 사용하면 느려지고 D드라이브쪽에 파일을 생성하면 괜찮더라고요

이렇게 보면 파일 I/O로 인한 CPU 연산능력에 부하가 걸려 떨어진다라고 보기에는 어렵다는 생각이 들더라고요..

그래서 제 프로세스쪽에 File I/O를 발생시키면 C드라이브가 바빠서 그 처리가 지연됨에 따라 프로세스 단위로

context switching 발생되어 제 프로세스쪽이 지연되는것이 아닌가란 생각이 들었습니다.

하지만 이또한..잘 이해가 안되네요 File I/O를 발생시키는 Thread에서 다른 쓰레드로 처리연산이 넘어가면 되는것

이 아닌가란 생각이 드는 부분도 있고...

부족한 부분이 너무 많네요...

비록 윈도우 이긴하나 선배님들은 조언을 들으면 좋을거 같습니다...

추가적으로 리눅스에 대해서도 같이 공유해주시면 금상첨화일거 같습니다.

감사합니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.