Se eu puder interpretar sua pergunta, sim, há uma maneira de acelerar o software e colocar as coisas em cache, se você estiver disposto a permitir estados salvos, ou seja, arquivos sob seu controle que precisam ser abertos apenas no login do usuário e nas configurações do programa que são sempre as mesmas.
Você pode fazer isso em um MacOS, Linux e Windows: Feito corretamente, pode trazer bastante velocidade ao sistema, reduzindo a temperatura geral do sistema e prolongando a vida útil da mídia. Existem vários fatores que serão importantes para decidir se isso é bom para seu caso de uso:
-
A quantidade de RAM fisicamente disponível (menos de 8GB no MacOS ou no Windows 64bit é provável que seja catastroficamente segfault)
-
Número de programas e serviços principais que devem estar em execução
-
Desempenho de hardware e especificações gerais
Em casos específicos em que recipientes ou VMs não são possíveis ou não são viáveis e o alto desempenho e / ou a reprodutibilidade absoluta são desejados, esse é definitivamente o caminho a ser seguido.
No login do usuário, um script de inicialização reserva automaticamente uma parte da memória e cria um link simbólico na forma de um diretório: um ramdisk . Então, todos os arquivos de programas e arquivos de dados são copiados do SSD para o ramdisk. Em seguida, os programas em questão são iniciados automaticamente, usando configurações que você preparou e arquivos abertos que possuem históricos na configuração de sistemas para iniciar automaticamente.
O seguinte é um tipo de receita que seu script pode seguir.
Crie um perfil de usuário específico que “contenha” ou tenha acesso a todos os programas e dados necessários; em que todos os programas não necessários não são executados. Desative serviços, programas, conexões de rede, proteções de tela etc. e faça-o a partir das configurações do sistema (com base no usuário) sempre que possível.
Verifique se você tem muita memória e faça o perfil do carregamento do sistema nas circunstâncias que deseja reproduzir. Faça uma lista dos programas que você precisa: encontre os executáveis, os locais dos arquivos temporários e os arquivos e ativos gerados pelo usuário. Esses são os arquivos que você deseja copiar para o seu ramdisk. Este é um bom momento para ajustar o tamanho do seu disco RAM. Renomeie os arquivos temp e mantenha-os como backups no local original. Em seguida, crie links simbólicos que apontam dos locais dos arquivos temporários originais para os locais hospedados no disco virtual. Copie seus recursos de usuário também e, em seguida, chame o programa para iniciar os arquivos de usuário que você deseja abrir - assim como os sinalizadores que você possa precisar.
Isso é tudo que existe para isso. Só não deixe seu sistema hibernar ou falhar ...
MACOS
I do this for critical infrastructure on bare metal hardware
during art installations and audio-visual performances. I actually did
this recently on MacOS Sierra, in this case it was for a live video performance with resolume arena and screen capture with siphon.
#!/usr/bin/env bash
# use these cache dirs
dirs="com.resolume.arena info.v002.syphon.Syphon-Recorder"
# get available memory
size_mb=$(sysctl hw.memsize | awk '{print $2;}')
# use half the memory
size_mb=$[size_mb/2048]
origin="${HOME}/Library/Caches"
ramdisk="/Volumes/ramdisk"
diskutil erasevolume HFS+ "ramdisk" hdiutil attach -nomount ram://$[size_mb]
if [ -d ${ramdisk} ]; then
for dir in ${dirs}
do
/bin/mkdir -p ${ramdisk}/${dir}
if [ -d ${origin}/${dir} ]; then
if [ ! -L ${origin}/${dir} ]; then
/bin/mv ${origin}/${dir} ${origin}/${dir}.bak
fi
fi
if [ -L ${origin}/${dir} ]; then
/bin/rm ${origin}/${dir}
fi
if [ ! -L ${origin}/${dir} ]; then
/bin/ln -v -s -f ${ramdisk}/${dir} ${origin}/${dir}
fi
done
fi
/bin/mkdir -p ${ramdisk}/Applications/Resolume
/bin/mkdir -p ${ramdisk}/RAMDISK_REPOSITORY/
echo "Copying Resolume to ramdisk"
/bin/cp -r "/Applications/Resolume Arena 5.0.2/" "${ramdisk}/Applications/Resolume/"
/bin/cp -r "/Users/Shared/RAMDISK_REPOSITORY/" "${ramdisk}/RAMDISK_REPOSITORY/"
cd /Applications/syphon
/usr/bin/open Syphon\ Recorder.app/
cd /Volumes/ramdisk/Applications/Resolume/
/usr/bin/open Arena.app/
exit
LINUX
In the Linux environment, Arch is a great platform where you can
really keep your installation lean by only installing exactly what you
need. In extreme situations, an engineer might choose to copy the
entire system folder to the ramdisk (e.g. from a relatively low-spec
read-only SD Card (to inhibit SD card corruption) or even from a network location. The code above should work with a few modifications.
WINDOWS
I haven’t personally done this on Windows, but it is possible. Check
this out if you need the ramdisk on Windows:
Windows ERAM no github