Bom dia a todos.
Estou desenvolvendo um sistema comercial, e o módulo de estoques digamos que ficou gigante. Quanto estou incluindo um novo ítem no arquivo ou mesmo navegando entre eles, sistema interrompe a execução e sai para o promtp exibindo a seguinte mensagem:
__ATPROMPT (0) Urencoverable error:5311 Cannot create VM swap file
Alguém já passou por essa situação?
Antecipadamente agradeço.
Um abraço...
Erro de swap
Moderador: Moderadores
-
Marquizeppe
- Usuário Nível 1

- Mensagens: 2
- Registrado em: 24 Fev 2008 10:31
- Localização: Lençóis Paulista - SP
Seja bem-vindo ao fórum. 
Esse erro, segundo o manual, pode ter origem em 5 problemas diferentes:
1) disco cheio
2) diretório destino do swap não existente
3) número de FILE HANDLES insuficientes
4) path inválido (equivalente ao motivo 2)
5) direitos de usuário insuficientes
No caso de diretório inexistente e path inválido, normalmente o erro já acontece de cara, ao executar o programa. Acho que o mesmo deveria acontecer com direitos de usuário insuficientes. Então, provavelmente deve ser disco cheio. Ou mesmo o esgotamento do número de FILE HANDLES. Mas pelo que você comenta, parece mesmo ser disco cheio.
Mas pode ser interessante questionar se o swap deveria mesmo ocorrer. O sistema fica mais lento logo antes do swap?
Esse erro, segundo o manual, pode ter origem em 5 problemas diferentes:
1) disco cheio
2) diretório destino do swap não existente
3) número de FILE HANDLES insuficientes
4) path inválido (equivalente ao motivo 2)
5) direitos de usuário insuficientes
No caso de diretório inexistente e path inválido, normalmente o erro já acontece de cara, ao executar o programa. Acho que o mesmo deveria acontecer com direitos de usuário insuficientes. Então, provavelmente deve ser disco cheio. Ou mesmo o esgotamento do número de FILE HANDLES. Mas pelo que você comenta, parece mesmo ser disco cheio.
Mas pode ser interessante questionar se o swap deveria mesmo ocorrer. O sistema fica mais lento logo antes do swap?
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
-
Marquizeppe
- Usuário Nível 1

- Mensagens: 2
- Registrado em: 24 Fev 2008 10:31
- Localização: Lençóis Paulista - SP
Erro swap
Obrigado, por responder.
Disco cheio não pode ser, meu note tem 120Gb de HD e estou utilizando somente 40 Gb. Quanto ao diretório de swap eu não tenho ele criado, você poderia me explicar como faço para direcionamento do swap para este diretório. E quanto a File handles, o que vem a ser, como eu detecto isso?
Disco cheio não pode ser, meu note tem 120Gb de HD e estou utilizando somente 40 Gb. Quanto ao diretório de swap eu não tenho ele criado, você poderia me explicar como faço para direcionamento do swap para este diretório. E quanto a File handles, o que vem a ser, como eu detecto isso?
Se você nunca configurou o diretório para swap, então não deve ser isso, pois na falta dessa configuração, o linker utiliza ou o diretório de onde a aplicação foi executada ou o raiz. Não sei dizer ao certo. Nem lembro quando foi a última vez que usei o RTLink. Então não sei dizer como configurá-lo. Mas se for BLinker, você tem três alternativas: no script de linkedição, na linha de comando ou numa variável de ambiente. Leia o help dele para saber os detalhes.
O parâmetro FILE HANDLES (ou alças de arquivos) é uma variável ambiental do DOS que lhe diz qual é a quantidade máxima de arquivos que ele pode manter abertos ao mesmo tempo. É configurado no arquivo CONFIG.SYS em Windows não-NT e no arquivo CONFIG.NT em Windows de kernel NT. O formato é simples: FILES=<n>.
Agora, swap é coisa que dificilmente acontece com quem prefere montar seus programas para utilizar o modo protegido, onde eles passam a utilizar toda a memória extendida que lhe for dada (2MB, 4MB, 8MB, etc). É que nesse caso o endereçamento de memória deixa de ser segmentada e passa a ser linear, e numa quantidade bem maior. Dificilmente um programa, por maior que seja, precisaria de swap em uma situação dessas. Pelo jeito, você ainda usa o modo real, onde os swaps são mais corriqueiros. No fórum esse assunto já foi tratado à exaustão. Caso se interesse, faça uma busca pelo termo "modo protegido". Vários links serão informados.
O parâmetro FILE HANDLES (ou alças de arquivos) é uma variável ambiental do DOS que lhe diz qual é a quantidade máxima de arquivos que ele pode manter abertos ao mesmo tempo. É configurado no arquivo CONFIG.SYS em Windows não-NT e no arquivo CONFIG.NT em Windows de kernel NT. O formato é simples: FILES=<n>.
Agora, swap é coisa que dificilmente acontece com quem prefere montar seus programas para utilizar o modo protegido, onde eles passam a utilizar toda a memória extendida que lhe for dada (2MB, 4MB, 8MB, etc). É que nesse caso o endereçamento de memória deixa de ser segmentada e passa a ser linear, e numa quantidade bem maior. Dificilmente um programa, por maior que seja, precisaria de swap em uma situação dessas. Pelo jeito, você ainda usa o modo real, onde os swaps são mais corriqueiros. No fórum esse assunto já foi tratado à exaustão. Caso se interesse, faça uma busca pelo termo "modo protegido". Vários links serão informados.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Prezado Colega
Esse erro acontece mais frenquentemente quando especificamos o diretório de SWAP na variável de ambiente Clipper e esqecemos de criar o mesmo diretório.
Para corrigir esse problema basta criar o diretório que está especificado no SET CLIPPER.
Exemplo :
SET CLIPPER=//F:240 //SWAPPATH:C:\TEMP
Neste caso você deverá criar o diretório TEMP no disco C
Até logo.
Marcelo
Esse erro acontece mais frenquentemente quando especificamos o diretório de SWAP na variável de ambiente Clipper e esqecemos de criar o mesmo diretório.
Para corrigir esse problema basta criar o diretório que está especificado no SET CLIPPER.
Exemplo :
SET CLIPPER=//F:240 //SWAPPATH:C:\TEMP
Neste caso você deverá criar o diretório TEMP no disco C
Até logo.
Marcelo
Programador que é programador, quando tá de folga vai inventar função nova, fazer testes, ou seja... se divertir
Cobra 210 - Drive de 8" 1.024 KB - 64 KB RAM - Impressora de Linha Cobra - Visicalc - Fortran - Dialog - Sistema Operacional SP/M (é sp/m mesmo - era o cp/m da cobra)
Cobra 210 - Drive de 8" 1.024 KB - 64 KB RAM - Impressora de Linha Cobra - Visicalc - Fortran - Dialog - Sistema Operacional SP/M (é sp/m mesmo - era o cp/m da cobra)
No modo real, ao especificar um diretório de swap que não existe, o mais comum é que o programa aborte logo na execução e não durante o uso do programa.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!

