#`everything clone`

56 messages · Page 1 of 1 (latest)

stark elbow
#

windows
c++
personal project

#

@oak ravine there you go

oak ravine
#

Ok so

#

First up: You will not clone or replicate their performance because it's extremely tedious to do so

#

Second: How much do you know about Windows internals and about how different filesystems work?

stark elbow
#

i have 0 knowledge. but Im very prepared to put in the hours

#

i looked up a tutorial on ntfs

oak ravine
#

How many details do you want? lmao

stark elbow
#

just guide me to the resources.

oak ravine
#

There are none

#

That's my point

stark elbow
#

then how does anyone start

oak ravine
#

idk you smoke a whole lotta crack

stark elbow
#

i do weed

#

and c++

oak ravine
#

No you need specifically crack to work on Windows internals

#

So basically Windows is on NTFS as you might know

#

Microsofts proprietary filesystem sauce

stark elbow
#

yes

#

and a newer version i don giv sheet about

#

but yea ntfs.

oak ravine
#

New Technology File System (NTFS) is a proprietary journaling file system developed by Microsoft. Starting with Windows NT 3.1, it is the default file system of the Windows NT family. It superseded File Allocation Table (FAT) as the preferred filesystem on Windows and is supported in Linux and BSD as well. NTFS reading and writing support is pro...

#

This is the thing you need to parse

#

Then you need to find a very efficient way to store the info you parse out from it

stark elbow
#

i need to parse mft

oak ravine
#

And then you need to query that structure quickly

#

That's what everything does

#

They don't use the Windows file APIs, they access the actual drive and parse the raw master file table, yeah

stark elbow
#

why not windows api

#

it slo?

oak ravine
#

Because that's orders of magnitude slower?

stark elbow
#

ok

oak ravine
#

That's for the indexing part

#

For the "not having to index every once in a while" that requires some more magic

stark elbow
#

its something i want to do but its an unexplored territory and ig for good reasons probab

oak ravine
#

It's not super unexplored

#

But it's all very messy

stark elbow
oak ravine
#

It doesn't does a full database index

#

While running it also doesn't re-index iirc

#

My guess is that they're getting callbacks for file changes etc.

#

So if you're planning to build something similar I think that's a cool project but you should scope out what features you want to add (searching file content will make things much more complex etc.)

stark elbow
#

theres a section on mft which stores filename and sector start location and no.s of sector . so thats with the location

stark elbow
stark elbow
stark elbow
#

once a while*

oak ravine
#

Which log file?

stark elbow
oak ravine
#

The MFT parsing only happens on indexing

#

So until you restart the app you wouldn't see changes show up

stark elbow
#

ig it would be ok

#

If I dont find enough resources/guidance , Ill have to drop this

oak ravine
#

😎

#

The hard part is making it fast