Click here to Skip to main content
15,891,607 members
Please Sign up or sign in to vote.
1.00/5 (2 votes)
See more:
Hello, I need to program something like a file system,like FAT32 for example, I need to put into a flash memory(The flash memory we commonly use to transport music, videos or text files for example) a different format than the commercial ones. I need to do that in a transparent way to the final user who is going to use that memory in a PC with this program installed.
The why is: I need to have something that permit me to ensure my data inside the memory, but it has to be transparent to the final user, maybe a decrypt process could not be so transparent.
I'll really appreciate any idea, thanks in advance.
Sorry my English, it's not my native language...
Posted
Updated 31-Jan-12 9:25am
v4
Comments
Sergey Alexandrovich Kryukov 31-Jan-12 14:13pm    
Why?
--SA

To add to above, if your aim is to encrypt the data, then making your file system non-standard, will make it harder to use with other systems.

File based encryption will lower costs for your product across the board, as compared to writing a new file system and drivers for every OS. Not only will you have development costs, but you'll have support costs associated also.
 
Share this answer
 
Comments
glbrt.gds 31-Jan-12 16:17pm    
Yes JackDigler, you are right, but to do it transparent to the final user is the problem
JackDingler 31-Jan-12 16:32pm    
I'm not sure what you mean by 'transparent'.

Do you mean, seamless and easy to use?
Or do you mean hidden and inaccessible?

If you're going to write a filesystem that a user won't be able to see through explorer, then you'll need to write custom device drivers for each OS you want to support. For Microsoft Windows that means writing drivers for XP, Vista and Windows 7. Then you'll need to write code to interface with those drivers.

You'll find that effort more challenging than writing a custom file system. After all, if you took and existing file system and made minor changes to the header section, you could make it unreadable by other systems that don't know how to interpret it. Changing the identification bytes for FAT32 would cause Windows to ignore it as unreadable.
glbrt.gds 1-Feb-12 10:22am    
I mean easy to use.
You are totally right, probably taking an existing file system and modifying the header section resolve the problem. but even doing this, I will have to implement reading and writing operation,.. or not ?
JackDingler 1-Feb-12 10:26am    
At least then you'd have an existing code base to draw on. you wouldn't have to reinvent everything.

That would make your task a little easier.
Sergey Alexandrovich Kryukov 31-Jan-12 17:51pm    
This is a good point. I agree, my 5.
--SA
Have a look at ReactOS[^] or FreeDOS[^].

There is also an implementation of FAT32 included with linux.

The above links are for open source OSes so you'll find what you need somewhere in the code - try asking at their respective mailing lists.

Best regards
Espen Harlinn
 
Share this answer
 
Comments
glbrt.gds 31-Jan-12 15:31pm    
Lot of thanks Espen
Sergey Alexandrovich Kryukov 1-Feb-12 3:04am    
This is interesting information, my 5, but don't you agree with my answer?
--SA
Espen Harlinn 1-Feb-12 3:48am    
Perhaps - OP has altered his question since you answered.
"Like FAT32" is not a file format, this is a file system. If you don't understand it, you are probably not ready to develop your own, sorry. Also, "my own" and "HELP!!", to certain extent, contradict to each other. If will be "your own" only if you do it on your own.

By the way, 1) avoid "ALL-CAPS", it is considered shouting on the Web, use correct capitalization, punctuation and spelling; 2) there is nothing in your post that would somehow justify development of your own file system.

As a bonus: please see my last note above. Instead of development of your own file system, try to learn encryption and think about using it.

Alternatively, think about keeping all your data open for everyone. Most likely, this is the best alternative for you. In almost all cases, the desire to keep data in secret in childish, not based an anything serious.

—SA
 
Share this answer
 
Comments
fjdiewornncalwe 31-Jan-12 14:26pm    
+5.
Sergey Alexandrovich Kryukov 31-Jan-12 14:36pm    
Thank you, Marcus.
--SA
glbrt.gds 31-Jan-12 14:52pm    
As I have said before English is not my native language, I am really sorry if I have hurt someone here, that was not my intention, I am very sorry.
And you are totally right, if I am asking for help then it won't be my own project, sorry about that. I promise to post here the solution if I find it somewhere else.
Sorry about "file format", it was my mistake, what I want to do is not a new file format,but a file system, I've understand that.

I will read about encryption, I will be back after then.. thanks.
Sergey Alexandrovich Kryukov 31-Jan-12 17:50pm    
There is nothing to apologize about.
So, are you accepting the answer formally (green button)?
--SA

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900