OS없이 사용할수 있는 파일시스템

nouveou의 이미지

인수 인계 받은 프로그램이 임베디드 시스템인데
리눅스나 WINCE같은 OS안쓰고 그냥 펌웨어 레벨로 되어있는데요
지금 NAND FLASH에 파일 시스템 포팅하려고 하는데요
FAT나 JFFS같은거는 포팅이 힘들어서 FTL도 구현해야되고
그냥 간단하게 쓸수 있는 NAND FLASH용 파일 시스템 없나요 오픈 소스로 나와있는거요?

bushi의 이미지

yaffs 에서 yaffs direct 라는 것을 제공하기는 하는데요, 써본 적은 없습니다.
API 사용예제겸해서 제공되는 일종의 테스트코드도 포함되어 있으니 당장 써먹기엔 그리 난감하지 않을겁니다.
저자의 주장으론, 이것을 사용한 상용제품도 여럿이라니 한번 시험해 볼 가치는 충분합니다.

OTL

onmystep의 이미지

그나마 FAT, JFFS, YAFFS2 들이 간단하게 쓸수 있는 것들이 아닌가 싶네요.

약 2년전에 NOR만 쓰던 platforma에 1G-16G정도의 NAND를 붙이게 되면서
여러가지를 놓고 같은 고민을 했었는데, 결국 YAFFS2로 했습니다. 그냥 yaffs였나 yaffs2였나... 기억이 좀..

OS로는 RTOS로, multitasking이 지원되긴 했지만, NAND flash access시는 single task access만 하게 되어 있어
nouveou님과 매우 비슷한 상황이었던 같네요. 그땐 HW적으로도 nand flash access를 위한 전용 bus 도 없어서
addr/data bus + GPIO를 이용해서 구현되었습니다. CPU resource를 좀 버리긴 해도 잘 됩니다.

nand flash memory의 특성도 그렇고, 용량이 상대적(?)으로 크다 보니, 매우 많은 수의 directories, filenames 관리가 되어야 하고
물론, 예외도 있을수 있지만 시스템 전반의 신뢰도 및 access가 보장되어야 한다면, 검증된 file system을 쓰는것이 좋을 듯 싶습니다.

참고로 yaffs2 source를 가지고 porting완료 후 mass production전까지 검증 단계까지
소요된 인원은 책임급 2명의 도움 하에, 실무 1년차 연구원이 100% 작업해서 시간은 약 3-4주정도 였던것 같습니다.
(물론, platform 종류와 기타 제반 환경에 따라 달라 질수 있겠지요)

익명 사용자의 이미지

onmystep님이 쓰신 글을 아주 흥미롭게 읽었습니다.
사막에 오와시스와 같이 저에게 희망의 샘줄기를 주었습니다.
onmystep님이 yaffs2 쏘스를 가지고 porting한 경험을 올려주면
최대로 감사하겠네요...
용서해주세요.
염치없는 왕초보가 이 글을 씁니다.

댓글 달기

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