/dev 디렉토리 안에 있는 파일들에 관하여 질문있습니다.

lmk378의 이미지

/dev 디렉토리에 들어있는 장치파일들은 초기 리눅스 부팅시 커널에서 파일시스템 마운트 후 만들어 주는 것인가요? 아니면 파일시스템상에 다 들어있는 것인가요?
예를 들자면 현제 sdcard(이하 mmc)를 안드로이드 시스템에서 마운트가 되도록 하고있습니다. 리눅스 커널은 동일한 버전을 사용하고 있고 안드로이드 파일시스템 이미지만 바꾸어 테스트하고 있는데요. 안드로이드 파일시스템 A와 B가 있는데 A에는 /dev/mmc 라는 디바이스가 있습니다. 하지만 B에는 없는습니다.물론 A에서는 mmc가 마운트되고 B에서는 마운트되지 않습니다. 그렇다면 파일시스템 이미지 자체에 들어가 있어야 한다는 것인데... 여지껏 제 생각은 리눅스 커널 컴파일시 menuconfig에서 추가시켜준 device driver들이 /dev 디렉토리에(그것을 쓰던 안쓰던 상관없이) 생성된다고 생각했는데요. 제 생각이 틀렸던 걸까요??

bushi의 이미지

vold.conf 만들어주면 vold 가 mknod, mount 해 줍니다.

리눅스 데스크탑에선,
옛날엔 수작업으로 미리 다 만들어놓고 사용했습니다.
devfs 가 나온 후론 커널이 알아서 만들어주므로 신경껐었고,
요샌 udev 유저모드 데몬이 만들어주므로 역시 신경끕니다.

안드로이드에선 init 이 udev 역할을 일부 겸합니다.
워낙 단순해서 backend 와의 연결은 없지만 mknod 정도까지는 해줍니다.
/dev/block/ 에 생기도록 하드코딩 되어 있는데, vold 와는 아무 상관없습니다.

OTL

lmk378의 이미지

현제 usb를 안드로이드커널에서 인식시키는데 성공했습니다.
mknod로 /dev/sda과 sda1을 수동으로 만들어서 마운트하니 잡히더군요
init 프로세스가 mknod를 수행해준다 하셨는데 ps로 확인한 결과 init도 올라와있습니다.
udev가 usb를 연결시 sda와 sda1 모두 만들어준다는 말씀이신가요? 아니면 커널컴파일시에
static 하게 추가하였던 드라이버들을 모두 자동으로 생성시켜준다는 말씀이신가요??

댓글 달기

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