프레임버퍼 디바이스 드라이버의 분석 질문입니다!

kangnuni의 이미지

안녕하세요 프레임버퍼 리눅스 디바이스 드라이버의 구조를 공부하려고 합니다.
지금 다른 OS에 디바이스 드라이버를 만들어야 되는데 리눅스의 핸들링을 본따서 만들려고 합니다.
LN2410SBC보드의 프레임버퍼를 제어하는 드라이버를 분석하려는데요
driver/video/Makefile을 보니

fb.o ( fbmem.o fbmon.o fbcmap.o fbsysfs.o modedb.o )

프레임버퍼를 쓰기위해서는 위의 다섯가지 파일은 기본적으로 컴파일이 되어
fb.o를 생성하는 것 같습니다. 위에 있는 다섯개의 파일은
프레임버퍼를 사용하는데 있어서 기본적으로 필요한 소스들인가요?
혹시 무슨기능을 하는지에 대한 문서등이 있는지요.

또 부가적으로
cfbfillrect.o cfbcopyarea.o cfbimgblt.o softcursor.o
등이 같이 컴파일 되는 것 같습니다. 이녀석들 역시 정체를 좀 모르겠어서
혹시 프레임버퍼디바이스드라이버에 대한 책이나 문서등이 있다면 추천해주시면 감사하겠습니다!
좋은 하루되세요

bushi의 이미지

리눅스 프레임버퍼는
1. graphic adapter 드라이버
2. console 드라이버
3. user application 인터페이스
가 합쳐진 형태입니다.

그래픽 어댑터 드라이버는 컨트롤러를 제어하는 역할을 하고,
콘솔 드라이버는 문자를 그리거나 화면 지우기,스크롤 등의 역할을 하고,
유저 인터페이스 드라이버는 어플리케이션이 프레임버퍼를 다룰 때 필요한 것들을 제공하고 있습니다.
(프레임버퍼 정보 알아내기, 바꾸기. 데이타 교환등)

어차피 소스는 분석하셔야 할테니, 느긋하게 마음먹고 대강의 얼개를 파악하시면 다루시는 OS 에 포팅할 때도 훨씬 편하실 겁니다.

kangnuni의 이미지

지금 말씀해주신 세가지 분류로 어떤 소스가 어디 포함되는지 를 좀 자세하게 알고 싶은데요
혹시 참고 서적, 문서는 없나요? 디바이스 드라이버 책들을 봐도 프레임버퍼 드라이버의 구조가 나와있진 않네요 ㅠㅠ

그리고 소스분석을 하는이유가 하드웨어와 접합되는 최밑단 함수들을 빨리 찾아내야 하는 이유도 있어서요.. 여튼 참고자료가 가장 급한데 알고 계시다면 답변 부탁드리겠습니다.

댓글 달기

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