Boa Noite,
Primeiramente, o que é VFS? VFS é Virtual File System. É uma camada que existe em muitos sistemas operacionais e também no Minix, que cuida da parte comunicação com o File System. O mesmo foi desenvolvido pelo Balázs Gerófi como tese de Mestrado na universidade de Amsterdam com nome de “Design and implementation of the MINIX Virtual File system“.
Mas por que se comunicar com o servidor VFS? Por que adicionar algo nele? Bom, se você está trabalhando em baixo nível e quer por exemplo acessar diretamente os INODES por algum motivo, você deve inicialmente se comunicar com o servidor VFS. Para realizar a comunicação é simples, mas vamos supor que você queira um método especifico que o mesmo não possue, então você deve cria-lo.
Como fazer isso?
Inicialmente você deve editar o “/usr/src/include/minix/callnr.h”. Adicione logo abaixo a linha “#define GETPGRP 63″ o seguinte:
[code lang=”c”]
#define TESTCALL 64
[/code]
Em seguida você deve modificar o servidor VFS e adicionar o que você quer que faça quando a mesma for chamada. Edite inicialmente o “/usr/src/servers/vfs/table.c”. Você deve pegar a linha que possui no_sys, /* 64 = unused */
E alterar para:
[code lang=”c”]
do_TESTCALL, /* 64 = unused */
[/code]
Este será o método chamado quando a syscall de número 64 for executada.
Após isso você deve alterar o “/usr/src/servers/vfs/proto.h” que é onde estão definidos os métodos. Adicione o seguinte:
[code lang=”c”]
/* do_TESTCALL EXAMPLE */
_PROTOTYPE( int do_TESTCALL, (void) );
[/code]
Então você deve criar o método propriamente dito dentro do “/usr/src/servers/vfs/read.c” (ao menos eu fiz nesse arquivo). Adicione o seguinte código:
[code lang=”c”]
/*===========================================================================*
*Trabalho: do_ver_contig *
*===========================================================================*/
PUBLIC int do_TESTCALL() {
message m;
printf(“Número recebido %d”, m_in.fd);
}
[/code]
Mas como executar? E ver isso tudo funcionando? Como compilar?
Inicialmente acesse “/usr/src/tools/” e execute:
$ make libraries
(Este pode ser um processo demorado)
Continue em “/usr/src/tools” e execute:
$ make hdboot
Reinicie.
Como testar e ver se está funcionando? Crie um arquivo no seu “/root” com o seguinte conteúdo:
[code lang=”c”]
#include
#include
#include
int main(int argc, char *argv[]) {
int fd = 2;
message m;
m.m1_i1 = fd;
printf(“Number: %d”, fd);
_syscall(FS, 64, &m);
}
[/code]
O que isso é pra fazer? Fazer uma syscall no método 64, passar por mensagem o número 2, então o do_TESTCALL recebe o parametro e imprime o mesmo. Bem inutil, mas isto é pra demonstrar como criar métodos dentro do servidor VFS.
Exemplo dos códigos adicionados no servidor VFS
Criando uma biblioteca do sistema no Minix.
Atenciosamente,
Matheus
PS: É um exemplo bobo, mas é para demonstrar como adicionar métodos ao servidor VFS. Provavelmente nos próximos dias publicarei um exemplo, mais real.
40 zł na start legalne kasyno online bez weryfikacji [Asonepaxtos.gr]
75 free spinů za ověření účtu
Review my web page česká casina s bonusem
české Casino Free spiny za Registraci 2026 casino vklad
paypal
sloty online kryptowaluty
Take a look at my webpage legalne automaty do gier 2026
united kingdom roulette game download, usa pokies online and td australia
visa debit gambling, or online slots no deposit bonus
eu casinos [Monique] deposit bonus usa
kasyno na komórkę polskie
my web blog – lightning dice od 5 zł; Juliana,
online gambling laws in uk, real money united statesn pokies and united statesn casino slots everything About online casino, or best online casino to
play in united states
echtgeld bonus wager frei
My homepage online casino ab 25 euro eps (https://Www.Kovohnevotin.cz/)
staatliches online Roulette casino ohne umsatzbedingungen klarna
seriöses casino reload Bonus ethereum mindesteinzahlung
paying tax on which gambling sites accept credit cards winnings canada, online casino no deposit bonus free spins
usa and pokie machines in united states, or best live
dealer casino usa
spielautomaten casino bonus
Here is my web site; 5 Euro Einzahlen 25 Euro Spielen
gewinnen vegas plus casino ohne anzahlung bonus
Also visit my webpage: beste slot anbieter (https://electricosdelta.Com.mx/existiert-eine-casino-automaten-online-app-fur-das-iphone/)
online Casino Mit 100 Euro Einzahlung Paypal
mit niedrigem einsatz ab 20 euro