윈도우 api의 FindWindow같은 리눅스 함수는??

fairycat의 이미지

리눅스에서 ipc를 구현해야 하는데요. 메시지큐와 파이프 등등이 있다고만
알고 있습니다. 그런데 이러한 ipc를 통해 통신을 하려면 그전에 프로세스
핸들을 구해야 하는데 리눅스에서는 어떠한 방식으로 이 핸들 혹은 프로세
스 아이디를 구하는지 알고 싶습니다.

또 터미널 모드중에 canonical mode/ noncanonical mode의 차이점이
무엇인지요. 제가 현재 유저쉘을 하나 만들고 있는데 기존에 있는 쉘에다
명령만 전달하고 그 쉘에서의 출력 결과를 파이프를 통해서 가져오는 방식
을 쓰고 있습니다. 그런데 이렇게 하려니까 제가 만든 쉘에서 엔터를 한번
더 입력해야만 명령이 실행되더군요. 물어보니 이게 아마 canonical, non
canonical 터미널 모드의 차이일꺼라고 들었는데 무슨 관련이 있는지 감이
안잡힙니다.

또 파이프를 통해 다른 쉘의 출력 결과를 가져오다보니 파이프 용량을 초과
하는 바이트 배열을 받아들이는 경우 블록되는 경우가 있습니다. 이러한 현
상을 막으려면 어떻게 해줘야 할까요? 파이프 크기를 강제로 늘릴수는 없는
지요?

여러분의 조언 부탁드리겠습니다. 작은 힌트라도 주시면 감사하겠습니다.

verena의 이미지

win32의 경우엔 윈도우를 이용한 ipc가 가능한 경우에는 분명한건 다른 한쪽에서 보낼려는 쪽의 윈도우 이름은 알고 있어야겠죠? 이것도 모른다면 ipc자체가 불가능하게 됩니다.

socket을 이용한 ipc에서도 ip주소+port번호를 이용하여 통신을 하듯이, 다른 ipc의 메커니즘에도 저마다 고유의 name을 가지게 마련입니다. 이 name은 이미 소스단계에서 알고 있어야 하겠죠.

결국 FindWindow의 역할은 socket으로 따진다면 connect와 같은 역할을 하겠죠.

fairycat의 이미지

리눅스 시스템이 아직도 익숙해지지않아 걱정입니다. 아무튼 좋은 답변 감사
합니다. 늘 행복하세요

가이: 리여.. 확실히 너는 네지와는 다르다
록리: 위로라면 집어치세요..
가이: 위로같은게 아니다 ! 너는 네지와는 다르게 천재도 아니고 재능도 없다 하지만 너는 노력의 천재다..

- 나루토 <키시모토마사시>

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.