• Nenhum resultado encontrado

do Software Embarcado

6.2 Verificação da Implementação

6.2

Verificação da Implementação

Todo o código desenvolvido em RavenSPARK foi verificado utilizando-se o Examiner do SPARK. Assim, foi checada a consistência do código com relação ao fluxo de dados no programa, uso das variáveis, overflows, entre outros. Pode-se observar pelo relatório abaixo, fornecido automaticamente pela ferramenta, que a implementação encontra-se livre destes erros.

Código Fonte 6.1: Relatório da Análise da Implementação da Arquitetura de Controle.

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ Report o f SPARK Examination

SPARK95 Examiner w i t h VC and RTC G e n e r a t o r R e l e a s e 7 . 6 / 0 6 . 0 8 D e m o n s t r a t i o n V e r s i o n ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ DATE : 23−APR−2009 1 1 : 3 8 : 2 8 . 5 5 O p t i o n s : d e f a u l t s w i t c h f i l e u s e d i n d e x _ f i l e=rov_index . i d x w a r n i n g _ f i l e=rov_warning . wrn n o t a r g e t _ c o m p i l e r _ d a t a c o n f i g _ f i l e=r o v _ c o n f i g . c f g s o u r c e _ e x t e n s i o n=ada l i s t i n g _ e x t e n s i o n= l s t n o d i c t i o n a r y r e p o r t _ f i l e=RELATORIO . r e p html exp_checks r t c v c s n e s t n o s t a t i s t i c s f d l _ i d e n t i f i e r s f l o w _ a n a l y s i s=i n f o r m a t i o n ada95 a n n o t a t i o n _ c h a r a c t e r=# p r o f i l e =r a v e n s c a r r u l e s=none e r r o r _ e x p l a n a t i o n s=o f f j u s t i f i c a t i o n _ o p t i o n= f u l l S e l e c t e d f i l e s : Main_ROV_Embedded . adb I n d e x F i l e n a m e ( s ) u s e d were :

C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ rov_index . i d x No Meta F i l e s u s e d Summary w a r n i n g r e p o r t i n g s e l e c t e d f o r : Hidden p a r t s P r i v a t e t y p e s l a c k i n g method o f i n i t i a l i z a t i o n N o t e s Pragmas : P r i o r i t y , I n l i n e , P r o f i l e T a r g e t c o n f i g u r a t i o n f i l e : L i n e

1 −− 32− b i t System ( Page 196 o f t h e Spark Book ) 2 3 p a c k a g e S t a n d a r d i s 4 5 t y p e S h o r t _ S h o r t _ I n t e g e r i s r a n g e −2∗∗7 . . 2∗∗7 −1; 6 t y p e S h o r t _ I n t e g e r i s r a n g e −2∗∗15 . . 2∗∗15 −1; 7 t y p e I n t e g e r i s r a n g e −2∗∗31 . . 2∗∗31 −1; 8 t y p e L o n g _ I n t e g e r i s r a n g e −2∗∗31 . . 2∗∗31 −1; 9 t y p e Long_Long_Integer i s r a n g e −2∗∗63 . . 2∗∗63 −1; 10 t y p e F l o a t i s d i g i t s 6 r a n g e −3.40282E+38 . . 3 . 4 0 2 8 2E+38; 11 12 end S t a n d a r d ; 13 14 p a c k a g e System i s 15

16 −− System−Dependent Named Numbers 17 18 Min_Int : c o n s t a n t := −2∗∗63; 19 Max_Int : c o n s t a n t := 2∗∗63 −1; 20 21 Max_Binary_Modulus : c o n s t a n t := 2 ∗ ∗ 6 4 ; 22 Max_Mantissa : c o n s t a n t := 6 3 ; 23 24 −− S t o r a g e −r e l a t e d D e c l a r a t i o n s 25 26 t y p e A d d r e s s i s p r i v a t e ; 27 28 S t o r a g e _ U n i t : c o n s t a n t := 8 ; 29 Word_Size : c o n s t a n t := 3 2 ; 30 31 −− P r i o r i t y −r e l a t e d D e c l a r a t i o n s (RM D. 1 ) 32 33 s u b t y p e A n y _ P r i o r i t y i s I n t e g e r r a n g e 0 . . 3 1 ; 34 s u b t y p e P r i o r i t y i s A n y _ P r i o r i t y r a n g e 0 . . 3 0 ; 35 s u b t y p e I n t e r r u p t _ P r i o r i t y i s A n y _ P r i o r i t y r a n g e 31 . . 3 1 ;

6.2 Verificação da Implementação 101 36 37 end System ; 2 summarized w a r n i n g ( s ) , c o m p r i s i n g : 2 n o t e ( s ) S o u r c e F i l e n a m e ( s ) u s e d were :

C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\Main_ROV_Embedded . adb C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ S t a t u s C h a n n e l . ads C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ A c t u a t i o n D a t a C h a n n e l . ads C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ T h r u s t e r W r i t e r . a ds C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Stop . ads

C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ A c t u a t o r . a ds C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ A v o i d C o l l i s i o n . ads C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\Move . ads

C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ S2 . ads C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ S1 . ads

C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ B a s e W r i t e r . ads C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ S e n s o r . ad s C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Sonar . ad s C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ A l t i m e t e r . ads C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Compass . ads C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ BlackBoard . ads

C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ C o n t r o l D a t a C h a n n e l . a ds C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ MsgChannel . ad s

C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Remote . a ds C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ BaseReader . a ds C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\UDP_Sockets . a ds C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ C o n s t a n t s . a ds C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ DataTypes . a ds C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Shadows . ads C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Decoder . ad s C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Encoder . ads

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ S t a t u s C h a n n e l . ad s No L i s t i n g F i l e

Unit name : S t a t u s C h a n n e l

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ A c t u a t i o n D a t a C h a n n e l . a ds

No L i s t i n g F i l e

Unit name : A c t u a t i o n D a t a C h a n n e l Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ T h r u s t e r W r i t e r . ads No L i s t i n g F i l e

Unit name : T h r u s t e r W r i t e r Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Stop . a ds No L i s t i n g F i l e

Unit name : Stop

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ A c t u a t o r . ads No L i s t i n g F i l e

Unit name : A c t u a t o r

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ A v o i d C o l l i s i o n . ad s No L i s t i n g F i l e

Unit name : A v o i d C o l l i s i o n Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\Move . ad s No L i s t i n g F i l e

Unit name : Move

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

6.2 Verificação da Implementação 102

No e r r o r s f o u n d No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ S2 . ad s No L i s t i n g F i l e

Unit name : S2

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ S1 . ad s No L i s t i n g F i l e

Unit name : S1

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ B a s e W r i t e r . a ds No L i s t i n g F i l e

Unit name : B a s e W r i t e r

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ S e n s o r . ads No L i s t i n g F i l e

Unit name : S e n s o r

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Sonar . a ds No L i s t i n g F i l e

Unit name : Sonar

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ A l t i m e t e r . ad s No L i s t i n g F i l e

Unit name : A l t i m e t e r

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Compass . a ds No L i s t i n g F i l e

Unit name : Compass

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ BlackBoard . a ds No L i s t i n g F i l e

Unit name : BlackBoard

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ C o n t r o l D a t a C h a n n e l . ads

No L i s t i n g F i l e

Unit name : C o n t r o l D a t a C h a n n e l Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ MsgChannel . ads No L i s t i n g F i l e

6.2 Verificação da Implementação 103

Unit name : MsgChannel

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Remote . ads No L i s t i n g F i l e

Unit name : Remote

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ BaseReader . ads No L i s t i n g F i l e

Unit name : BaseReader

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\UDP_Sockets . ads No L i s t i n g F i l e

Unit name : UDP_Sockets

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

2 summarized w a r n i n g ( s ) , c o m p r i s i n g : 1 h i d d e n p a r t ( s ) ∗

1 p r i v a t e t y p e ( s ) l a c k i n g method o f i n i t i a l i z a t i o n

( ∗ Note : t h e above w a r n i n g s may a f f e c t t h e v a l i d i t y o f t h e a n a l y s i s . )

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ C o n s t a n t s . ads No L i s t i n g F i l e

Unit name : C o n s t a n t s

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ DataTypes . ads No L i s t i n g F i l e

Unit name : DataTypes

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Shadows . a ds No L i s t i n g F i l e

Unit name : GNAT

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . Unit name : Ada . Streams

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . Unit name : GNAT. S o c k e t s

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Decoder . ads No L i s t i n g F i l e

Unit name : Decoder

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

No summarized w a r n i n g s

S o u r c e F i l e n a m e : C: \ Documents and S e t t i n g s \ f h a s s i s \ Desktop \ROV_Embedded\ Encoder . ad s No L i s t i n g F i l e

Unit name : Encoder

Unit t y p e : p a c k a g e s p e c i f i c a t i o n

Unit has been a n a l y s e d , any e r r o r s a r e l i s t e d below . No e r r o r s f o u n d

Documentos relacionados