In fase progettuale, e successivamente durante l'implementazione, sono state fatte diverse scelte (dettate dalle tempistiche, dalla struttura del gruppo, ecc.) che hanno pregiudicato alcune funzionalità del VFS.
È possibile quindi estendere le funzionalità del VFS aggiungendo o migliorando:
Questa è la maggiore limitazione del VFS. Per gestire accuratamente i link simbolici, è necessario modificare la funzione di base get_i_node (che si occupa di restituire offset ed i-node partendo da un certo path). I link simbolici infatti devono venir creati allocando un nuovo i-node ed un nuovo blocco ad esso associato. All'interno del blocco deve essere inserito il path a cui il link fa riferimento (con un notevole spreco di spazio nel caso di blocchi di dimensioni notevoli). Il resto del VFS dovrà quindi trattare in modo trasparente il link simbolico. Una nota a parte merita la funzione ls che avrà il compito di verificare se un elemento è un link simbolico e in tal caso segnalarlo all'utente, una funzionalità avanzata ma molto utile consiste inoltre nella segnalazione dello stato del link simbolico: il file originale infatti potrebbe infatti essere stato rimosso, invalidando quindi il link.
Naturalmente non saranno previsti link simbolici verso il file system reale.
Una possibile estensione riguarda le funzioni di base del VFS alle quali si possono sia apportare miglioramenti (ad esempio la gestione di nomi di file e cartelle con spazi) che aggiungere nuove funzionalità quali concorrenza e gestione dei permessi.
L'interfaccia in bash serve a dare all'utente una sensazione di familiarità con il VFS, su questa strada le possibilità sono molteplici. Sarebbe utile ad esempio inserire:
Una funzionalità sicuramente importante da aggiungere è il rollback in caso di errore, infatti nell'implementazione attuale le operazioni nel file system non vengono eseguite in modo atomico e quindi in caso di errori è possibile che il VFS rimanga in uno stato inconsistente.