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.
bola na rede aposta
Also visit my webpage :: melhor site de apostas forum
yesterday horse racing results and non runners; Evangeline,
racing how to pick a winner
polska chorwacja bukmacher 1 dnb
wett spiele
My page – was ist die beste sportwetten app
Woah this is just an insane amount of information, must of taken ages to compile so thanx so much for just sharing it with all of us. If your ever in any need of related information, just check out my own site!
österreich wetten
Also visit my blog: beste quoten für sportwetten
Your posts provide a clear, concise description of the issues.
predicciones comparador de cuotas de apuestas futbol para
apuestas
apuestas masters de tenis
Here is my website: basketball-wetten.com
casas prediccion apuestas deportivas mexico
Nederland wedden sites
Look into my web blog promotiecode sportwedden (Wilbur)
weddenschappen voor geld
my web site: mobiel Wedden trucs vandaag
bester willkommensbonus Beste Sportwetten Seite
sportwetten über unter strategie
my web page – wetten dass heute (https://shugakukai.co.jp/sportwetten-gewinn-machen/)
österreich wetten
My web blog: Basketball-wetten.com
wettanbieter ohne oasis
Review my blog post :: Schweiz Deutschland Wetten
list of bet calculator horse racing (https://Bukmacherjakie.com/) racing
bookmakers uk
wett tipps für heute
my web page :: Wetten gewinne
gratiswette für neukunden ohne einzahlung
Here is my website … doppelte chance wetten
horse racing Scottish Grand National Betting Odds lines explained
esport wettseiten
Also visit my blog post buchmacher ohne steuer
wettquoten bielefeld stuttgart
Take a look at my web page … was heißt hc 0 7 5 2 Bei basketball wetten – https://basketball-wetten.Com/
–
sportwetten anbieter bonus
Take a look at my blog post; Sportwette ohne oasis
beste buchmacher
my web page … basketball-wetten.com
Awesome post. It’s so good to see someone taking the time to share this information
Great resources and tips for families here.
wettquoten em spiele
Take a look at my blog post basketball wetten handicap
pferderennen hoppegarten wetten
Here is my blog: WettbüRo essen
Sportwetten Kombiwetten livescore
fixed odds Horse racing uk racing betting
strategies free
pagina de mejor app para apuestas de futbol – Sheldon,
deportivas chile
Thank you a lot for sharing this with all folks you actually recognize what you’re speaking about! Bookmarked. Please additionally visit my site =). We can have a hyperlink trade contract among us!
comparativa casas de apuestas
My site; basketball-wetten.com
find all horse racing results in uk today
Here is my web-site: doncaster saturday nap horseracing tips (Jerri)
wetten ergebnisse vorhersage
Feel free to surf to my web page kombiwetten Tipps