Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place! |
| Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
 |
GNU/Linux Basic Guide
This 255-page guide will provide you with the keys to understand the philosophy of free software, teach you how to use and handle it, and give you the tools required to move easily in the world of GNU/Linux. Many users and administrators will be taking their first steps with this GNU/Linux Basic guide and it will show you how to approach and solve the problems you encounter.
Click Here to receive this Complete Guide absolutely free. |
|
 |
07-15-2010, 11:35 PM
|
#1
|
|
LQ Newbie
Registered: Feb 2010
Posts: 14
Rep:
|
Creating a Filesystem Driver
Hello, I am trying to create a driver for a particular filesystem format(FATX) because one does not exist natively for linux. So my question is this. I know the format the file system is in, but how do i make a driver for it? I mean, i want people to be able to do, for example
'sudo apt-get install fatx'
And then it downloads the driver, and bam, they can read the fatx file system? What steps would i have to take to accomplish this?
|
|
|
|
07-16-2010, 12:45 AM
|
#2
|
|
Senior Member
Registered: Sep 2009
Location: Philly, PA
Distribution: Kubuntu x64, RHEL, Fedora Core, FreeBSD, Windows x64
Posts: 1,078
|
Do you already have the kernel module written? If so then you must follow the debian policy manual before it will be accepted into any of the debian repositories.
http://www.debian.org/doc/debian-policy/
|
|
|
|
07-16-2010, 12:47 AM
|
#3
|
|
LQ Newbie
Registered: Jul 2010
Location: Bangalore
Distribution: fedora
Posts: 24
Rep:
|
Hi Zymus,
apt-get and tools alike are used for user space packages and NOT for kernel space modules (drivers). If at all you plan to write your driver, you could write the driver and test it and release it to the kernel groups (maintaiiners), they could take the same and incorporate in the main kernel if they find it good.
OR
Write the driver and release the source code. Tell people against which version of linux you have compiled. Needed users can download the source files and build the module with the command
make -C /usr/src/`uname -r` SUBDIRS=$PWD modules
|
|
|
|
07-16-2010, 01:54 AM
|
#4
|
|
Member
Registered: Apr 2008
Location: Toulon (France)
Distribution: FEDORA CORE
Posts: 492
Rep:
|
Or use FUSE to write your driver in user mode. I'd start with that solution before trying to make a kernel-land driver.
|
|
|
|
07-16-2010, 02:42 AM
|
#5
|
|
LQ Newbie
Registered: Feb 2010
Posts: 14
Original Poster
Rep:
|
I do not have the kernel module written. What steps(and in what language) do i have to take to get started from the absolute start?
|
|
|
|
07-16-2010, 06:34 AM
|
#6
|
|
LQ Newbie
Registered: Jul 2010
Location: Bangalore
Distribution: fedora
Posts: 24
Rep:
|
kernel is in C and hence your module should also be in C
Google search for writing device drivers from scratch and you will find many results for the same
|
|
|
|
07-16-2010, 05:34 PM
|
#7
|
|
Member
Registered: Apr 2008
Location: Toulon (France)
Distribution: FEDORA CORE
Posts: 492
Rep:
|
Quote:
|
What steps(and in what language)
|
Use FUSE...
1°) Kernel development is far more difficult than user space ("normal") programming. With FUSE, you can do the sugar for your fs in user space.
2°) Kernel modules are in C, no alternative there (see this and that). With FUSE come plenty of different languages wrappers.
|
|
|
|
| Thread Tools |
Search this Thread |
|
|
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -5. The time now is 08:18 PM.
|
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|