Comparação Qualitativa das Interfaces de Programação em Memória Persistente
Resumo
Memórias Persistentes (PM) são rápidas, endereçáveis a byte e com persistência dos dados. Essa nova tecnologia requer cautela ao ser utilizada. Devido a sua persistência é necessário garantir a integridade das estruturas lá presentes após falhas do sistema. Para utilizá-la de modo eficiente e seguro, foram criadas várias interfaces de programação com o objetivo de auxiliar o programador na tarefa de construir soluções que se utilizam da memória persistente. Neste artigo é analisado de forma qualitativa algumas interfaces populares, observado como elas abordam os problemas atuais na programação com memória persistente e qual é o grau de eficácia na execução dessa tarefa.
Referências
Jerrin Shaji George, Mohit Verma, R. V. P. S. V. (2020). go-pmem: Native support for programming persistent memory in go. In 2020 USENIX Annual Technical Conference. USENIX.
Jinglei Ren, Qingda Hu, S. K. T. M. (2017). Programming for non-volatile main memory is hard. In Proceedings of APSys ’17.
Kelsey R. Fulton, Anna Chan, D. V. M. H. M. L. M. (2021). Benefits and drawbacks of adopting a secure programming language: Rust as a case study. In Proceedings of the Seventeenth Symposium on Usable Privacy and Security. Usenix.
Morteza Hoseinzadeh, S. S. (2021). Corundum: Statically-enforced persistent memory safety. In Proceedings of the 26th ASPLOS.