누가 속도가 빠를까요? console에서 frame buffer 와 Xlib 사용 bitmap을 화면에 뿌림

이형영의 이미지

안녕하십니까? 이 곳에 와서 많은 도움 받고 있습니다. 다시 한 번 감사드리며..
오늘 궁금한게 있어 질문좀 드리겠습니다.

X library에 포함된 함수를 이용해서 640*480 정도의 화면에 bmp를 빠르게 뿌려 에니메이션을 구현하고 있는데요, 화면이 640*480 으로서 굉장히 커서 속도가(frame per second) 약간 느립니다.

조금만 더 빠르게 할수 있으면 좋을텐데요..

그래서 다른 방법이 없을까 찾아보니.. console에서 frame buffer에 직접 접근해서 뿌려주는 방법이 있더라구요..
제가 봤던 문서가 'frame buffer 이야기' 였구요..

과연 console에서 직접 frame buffer에 뿌려주면 속도가 더 나올까요?

X api : XPutImage() 라는 함수를 사용했었구요..

frame buffer api : mmap() 이라는 함수를 사용하려구 합니다.

사용하는 장비는 200 MHZ정도되는 고사양 임베디드 장비입니다. ^^;

그리고, 공부하다보니 frame buffer, X와의 관련성에 의문이 생기던데요..

X가 떠있는 상태라면 frame buffer를 사용하지 않는 건가요?
frame buffer만 이용해서 (mmap함수 사용) 화면에 먼가를 보여주려면, 먼저 X를 띄우지 않은 상태에서 즉, Console에서 작업해야 하는거 같아서, 이런 생각을 하게되었습니다.

고수님들 알려주시면 감사드리겠습니다.

좋은 하루되시고요.. 지금은 서툴지만 저도 님들처럼 리눅스를 자유롭게 쓸수 있는 날을 기대해봅니다.

aud_jazz의 이미지

프레임버퍼가 더 빠를것 같아요..

근데..200Mhz면..어떤보드를 쓰시나요?

안녕하세요~

jj의 이미지

비디오카드에 직접쓰는 framebuffer라면 빠르겠지만(framebuffer가 직접 해당 비디오카드를 지원할때), 일반적으로 최적화된 하드웨어 지원은 X 가 더 좋지 않아요?

--
Life is short. damn short...

aud_jazz의 이미지

jj wrote:
비디오카드에 직접쓰는 framebuffer라면 빠르겠지만(framebuffer가 직접 해당 비디오카드를 지원할때), 일반적으로 최적화된 하드웨어 지원은 X 가 더 좋지 않아요?

일반적인 pc환경이라면 그렇겠지만..
임베디드 보드는 cpu내부에 lcd컨트롤러가 있어서..
이것을 통해 lcd에 그림(?)을 그려줍니다.
비디오카드 대신 lcd컨트롤러가 있는거죠.

xfree86-tinyx도 framebuffer를 이용해서 그림(?)을 그린다고 하네요.

안녕하세요~

댓글 달기

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