Yes, both of those seem to be using kernel modules :) Implementing kernel
modules in Go would be ambitious, to say the least (at least in my opinion).

On Wed, Nov 25, 2020 at 11:28 PM Chris Lu <chris...@gmail.com> wrote:

> Hi, Axel,
>
> Thanks for answering! I was checking CEPH, Lustre, etc. Here is one
> example:
>
>
> https://github.com/ceph/ceph/blob/3931b21ae8ae508f2cd826a1e6cc89c9b2f64f97/src/libcephfs.cc
>
> Chris
> https://github.com/chrislusf/seaweedfs
>
>
> On Wed, Nov 25, 2020 at 3:17 AM Axel Wagner <axel.wagner...@googlemail.com>
> wrote:
>
>> Can you link to an example C project? Theoretically, everything that's
>> possible in C should also be possible in Go. However, I'm unaware of a
>> method to mount a userspace filesystem except FUSE. So as far as I'm aware,
>> you'd need a kernel module for that (and, yeah, doing that with Go would
>> probably be inadvisable).
>>
>> On Wed, Nov 25, 2020 at 9:39 AM ChrisLu <chris...@gmail.com> wrote:
>>
>>> Hi, Gophers (who are also good in C),
>>>
>>> Currently I am using FUSE to mount and write to remote storage.
>>> The library I am using is Basil Fuse. The performance is good as far as
>>> FUSE can go.
>>>
>>> User -> file.write() -> Linux Kernel -> Virtual File System -> libfuse
>>> -> FUSE -> DFS Client(in Go) -> Remote Storage
>>>
>>> However, I am researching how to write directly through linux virtual
>>> file system, skipping FUSE layer. Seems all similar libraries are in C. Is
>>> this even possible in Go?
>>>
>>> User -> file.write() -> Linux Kernel -> Virtual File System -> DFS
>>> Client(in Go) -> Remote Storage
>>>
>>> Thanks!
>>>
>>> Chris
>>> https://github.com/chrislusf/seaweedfs
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "golang-nuts" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to golang-nuts+unsubscr...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/golang-nuts/6f4c54fb-d5a5-4a1f-9840-0fbab596f785n%40googlegroups.com
>>> <https://groups.google.com/d/msgid/golang-nuts/6f4c54fb-d5a5-4a1f-9840-0fbab596f785n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/CAEkBMfEc0EU2dB_HzRG-DemP8k5e%2BSakt4Jd7qLTP%2BtPE6PiXQ%40mail.gmail.com.

Reply via email to