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.
online sportweddenschappen eu
Feel free to visit my blog top 5 sports Beste wedden
gs75 resultat
Feel free to surf to my webpage: v65 tips idag (https://Outlet.concil.se/)
нови всички букмейкъри
bonos apuestas deportivas real madrid atlético de madrid
bonus bez depozita sportsko klađenje
Also visit my webpage: sportska kladionica zagreb (https://brandinglabs.In)
fotbal liga národů
My website tenis vysledky french open, Earnest,
hvordan fungerer kombinasjonsspill
Also visit my web-site spill Norge Brasil
crypto sport betting
Look at my blog post; online sportsbook sites
spiltips em
Feel free to surf to my web blog … spiludbydere uden licens danmark (https://Baldwinnytuxedo.com/)
преглед на букмейкъри
Review my web site; калкулатор за печалба залог
ms fotbal kvalifikace
Feel free to visit my blog post fotbalové kartičky česká liga
best Trixie Betting Definition tips tomorrow
НАП букмейкъри
Also visit my web blog; value залози
tipps und tricks sportwetten
Here is my webpage: 1xbet basketball wetten
ako čítať tiket
my web-site; PredzáPasové Kurzy
Online Casino Auszahlung Bank 10 euro einzahlung trustly
uusi euteller casino
My web blog; 50% bonus asti 300€ kasino
suomalainen nettikasinot
Feel free to surf to my webpage … 20 ilmaiskierrosta talletuksella kasino (Sonja)
Yankee apuestas [http://WWW.Desiremontero.Es] hoy pronosticos
gokken in huizen
Here is my blog post casino holdem Met bonus
cuotas Apuestas Nba ufc hoy
tipos de handicap apuestas (Eloisa) multiples el gordo
apuestas barcelona real madrid valencia apuestas, Rolando, madrid
casino las higueras (Danielle) cartas jugar
Vale casino bono $100 (Loyalrestaurant.com) madrid bono bienvenida
paras live peli 30 ilmaiskierrosta rekisteröitymällä kasino (Lamar)
casino san remo tel aviv de
tigre noticias
blackjack basis strategie
My blog post … automatenspiele mit echtgeld (https://globalsmsg.ayudaskit.Tech)
gin rummy regole
my blog: jacpot
online casino für bayern
my page – beste Spielautomaten kreditkarte (https://Laetitia-kinesiologie.ch)
progressive jackpots online um geld spielen
Also visit my blog … live roulette casino – Mervin,
kasyno depozyt 5 euro
Have a look at my web page :: polskie Legalne automaty do gier
mobil casino spilleautomater med reload bonus weekendbonus
atlantic city blackjack casino oudenaarde (Park-pro-solutions.08ywrxmtqt-gok67p1n2652.p.temp-site.link)
sinkende quoten basketball pro b wetten (https://robandsusannah.com/)
online live roulette bonus casino; Guatemala.clasificadoscrd.com, fra 3 euro
free online casino games no deposit united states, $10 deposit
bonus casino nz and how to become online casino dealer (Pamela) pokies canada jokaroom,
or 21 dusaes casino login
welches casino ist das beste
Feel free to visit my blog … Roulette Auf 0 Setzen
best poker app usa, 10 dollar minimum deposit usa online casino 2021 and cons of gambling online (Lynda) casino australia free spins sign up,
or best canada poker sites
how much is a gambling license in canada, 100 united kingdom casino free keep online spin winnings and online gambling sites real money usa,
or newest online casino usa
Review my blog post :: Blackjackist Promo Code
tabella blackjack italiano
Also visit my website tresette a Quattro
united kingdom casino down game load machine no play slot, capitec online gambling
trusted casino usa and $5 minimum deposit casino australia 2021, or play poker in south united states
chusachansi casino in fresno california, legitimate online
pokies australia and grand mondial casino australia, or best slot sites
for winning usa
Look into my page do all casinos allow smoking (Gwendolyn)
casino met ideal zwolle
My site – blackjack apple pay (https://broderickmovers.com/casinon-utan-spelpaus-och-deras-betygssattning/)
casino mit hohe auszahlung – http://spinoffmonitor.com – ohne einschränkung bitcoin
online casino 5 euro einzahlung bitcoin
Here is my web page – wo kann man roulette spielen (https://www.Ivachen.com/sitemap-der-ubersehene-schlussel-zum-erfolg/)
progressieve jackpot gokkasten lage inzet
Here is my website – bouw nieuw casino venlo – https://www.Infinetworks.com/?p=53204,
online slots ab 5 cent einsatz
Feel free to visit my webpage – casino außerhalb deutschlands,
Sondra,
česká online casina legální 2026
Here is my webpage: nové casino narozeninový bonus
[Ina]
neue casinos Casino mit 50 Euro einzahlung handyrechnung sofort spielen