[pt] Apesar da pesquisa contínua para facilitar a programação de redes de sensores sem fio, a análise de perigos de concorrência ainda é de responsabilidade do programador, que deve tratar manualmente de questões como sincronização e memória compartilhada. Nós apresentamos uma linguagem de sistema que garante concorrência segura tratando ameaças em tempo de compilação. A fundamentação estática e síncrona da nossa abordagem permite um raciocínio mais simples sobre questões de concorrência, permitindo uma análise em tempo de compilação que garante programas determinísticos. Como contra-partida, nosso modelo impõe em termos da expressividade da linguagem, tais como para efetuar cálculos demorados, ou atender prazos estritos em tempo real. Nós implementamos diversos protocolos de rede conhecidos e o driver para rádio CC2420 para mostrar que a expressividade e responsividade obtida com a linguagem é suficiente para uma gama considerável de aplicações para redes de sensores. As implementações mostram uma redução de tamanho de código, com um aumento de memória abaixo de 10 porcento em comparação com nesC. O uso da linguagem proposta implica em diversas propriedades de segurança que se baseiam em abstrações de controle de alto nível, também resultando em código mais conciso e legível. / [en] Despite the continous research to facilitate Wireless Sensor Networks development, most safety analysis and mitigation efforts in concurrency are still left to developers, who must manage synchronization and shared memory explicitly. We propose a system language that ensures safe concurrency by handling threats at compile time, rather than at runtime. The synchronous and static foundation of our design allows for a simple reasoning about concurrency that enables compile-time analysis resulting in deterministic and memory-safe programs. As a trade-off, our design imposes limitations on the language expressiveness, such as doing computationally-intensive operations and meeting hard real-time responsiveness. To show that the achieved expressiveness and responsiveness is sufficient for a wide rage of WSN applications, we implement widespread network protocols and the CC2420 radio driver. The implemetations show a reduction in source code size, with a penalty of memory increase below 10 percent in comparison to nesC. Overall, we ensure safety properties for programs relying on high-level control abstractions that also lead to concise and readable code.
Identifer | oai:union.ndltd.org:puc-rio.br/oai:MAXWELL.puc-rio.br:28739 |
Date | 18 January 2017 |
Creators | FRANCISCO FIGUEIREDO GOYTACAZ SANT ANNA |
Contributors | ROBERTO IERUSALIMSCHY |
Publisher | MAXWELL |
Source Sets | PUC Rio |
Language | English |
Detected Language | English |
Type | TEXTO |
Page generated in 0.0017 seconds