Dissertation/ Thesis

Uma máquina virtual para uma linguagem concorrente intermédia

Λεπτομέρειες βιβλιογραφικής εγγραφής
Τίτλος: Uma máquina virtual para uma linguagem concorrente intermédia
Συγγραφείς: Silva, Roberto Rosa da
Συνεισφορές: Martins, Francisco Cipriano da Cunha, 1972-, Vasconcelos, Vasco Thudichum, 1964-
Έτος έκδοσης: 2014
Συλλογή: Universidade de Lisboa: repositório.UL
Θεματικοί όροι: MIL, Linguagem intermédia tipificada, Condições de corrida, Impasses, Multiprocessador, Teses de mestrado - 2013
Περιγραφή: Tese de mestrado em Engenharia Informática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2013 ; A necessidade de aumentar o poder de computação exigiu a produção de hardware com maior capacidade de processamento. Esta situação levou os fabricantes a abandonar o modelo tradicional de Von Neumann e a adotar sistemas com múltiplos processadores/ núcleos. Para que o software acompanhasse a evolução do hardware, as linguagens de programação concorrente ganharam protagonismo, mas com este regressaram os problemas bem conhecidos dos sistemas concorrentes e distribuídos, condições de corrida e impasses. O mecanismo mais popular que suporta programação concorrente é o uso de múltiplos fios de execução, que partilham variáveis. Neste contexto, propomos o desenvolvimento de uma máquina virtual para a linguagem MIL que imponha, estaticamente, que programas bem tipificados são livres de condições de corrida e não entrem em impasses. A primeira propriedade é conseguida através da imposição de uma disciplina no uso de trincos através de tipos singulares; a segunda é alcançada através de anotações polimórficas sobre a ordem pela qual os trincos são fechados. O sistema de tipos recusa programas cujos fios de execução dependam, ciclicamente, uns dos outros no fecho de trincos. No entanto, a introdução de anotações sobre trincos pode introduzir uma complexidade desnecessária no processo de geração de código. De forma a resolver este problema propomos um algoritmo para inferir as anotações polimórficas sobre trincos. A inferência faz-se da recolha de restrições locais sobre a ordem pela qual os trincos são fechados. As restrições são passadas a um SMT que averigua a sua consistência. Implementámos o algoritmo e experimentámo-lo extensivamente em programas MIL, nomeadamente, em código de alguma dimensão, obtido através da compilação de programas escritos numa linguagem de objetos concorrentes. Para além disso, pretendemos potenciar a integração da linguagem MIL, quer com linguagens de alto nível que tenham ...
Τύπος εγγράφου: master thesis
Γλώσσα: Portuguese
Relation: http://hdl.handle.net/10451/10264; 201291045
Διαθεσιμότητα: http://hdl.handle.net/10451/10264
Rights: openAccess
Αριθμός Καταχώρησης: edsbas.EF32FA5B
Βάση Δεδομένων: BASE
FullText Text:
  Availability: 0
CustomLinks:
  – Url: http://hdl.handle.net/10451/10264#
    Name: EDS - BASE (ns324271)
    Category: fullText
    Text: View record from BASE
Header DbId: edsbas
DbLabel: BASE
An: edsbas.EF32FA5B
RelevancyScore: 769
AccessLevel: 3
PubType: Dissertation/ Thesis
PubTypeId: dissertation
PreciseRelevancyScore: 768.644287109375
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: Uma máquina virtual para uma linguagem concorrente intermédia
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Silva%2C+Roberto+Rosa+da%22">Silva, Roberto Rosa da</searchLink>
– Name: Author
  Label: Contributors
  Group: Au
  Data: Martins, Francisco Cipriano da Cunha, 1972-<br />Vasconcelos, Vasco Thudichum, 1964-
– Name: DatePubCY
  Label: Publication Year
  Group: Date
  Data: 2014
– Name: Subset
  Label: Collection
  Group: HoldingsInfo
  Data: Universidade de Lisboa: repositório.UL
– Name: Subject
  Label: Subject Terms
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22MIL%22">MIL</searchLink><br /><searchLink fieldCode="DE" term="%22Linguagem+intermédia+tipificada%22">Linguagem intermédia tipificada</searchLink><br /><searchLink fieldCode="DE" term="%22Condições+de+corrida%22">Condições de corrida</searchLink><br /><searchLink fieldCode="DE" term="%22Impasses%22">Impasses</searchLink><br /><searchLink fieldCode="DE" term="%22Multiprocessador%22">Multiprocessador</searchLink><br /><searchLink fieldCode="DE" term="%22Teses+de+mestrado+-+2013%22">Teses de mestrado - 2013</searchLink>
– Name: Abstract
  Label: Description
  Group: Ab
  Data: Tese de mestrado em Engenharia Informática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2013 ; A necessidade de aumentar o poder de computação exigiu a produção de hardware com maior capacidade de processamento. Esta situação levou os fabricantes a abandonar o modelo tradicional de Von Neumann e a adotar sistemas com múltiplos processadores/ núcleos. Para que o software acompanhasse a evolução do hardware, as linguagens de programação concorrente ganharam protagonismo, mas com este regressaram os problemas bem conhecidos dos sistemas concorrentes e distribuídos, condições de corrida e impasses. O mecanismo mais popular que suporta programação concorrente é o uso de múltiplos fios de execução, que partilham variáveis. Neste contexto, propomos o desenvolvimento de uma máquina virtual para a linguagem MIL que imponha, estaticamente, que programas bem tipificados são livres de condições de corrida e não entrem em impasses. A primeira propriedade é conseguida através da imposição de uma disciplina no uso de trincos através de tipos singulares; a segunda é alcançada através de anotações polimórficas sobre a ordem pela qual os trincos são fechados. O sistema de tipos recusa programas cujos fios de execução dependam, ciclicamente, uns dos outros no fecho de trincos. No entanto, a introdução de anotações sobre trincos pode introduzir uma complexidade desnecessária no processo de geração de código. De forma a resolver este problema propomos um algoritmo para inferir as anotações polimórficas sobre trincos. A inferência faz-se da recolha de restrições locais sobre a ordem pela qual os trincos são fechados. As restrições são passadas a um SMT que averigua a sua consistência. Implementámos o algoritmo e experimentámo-lo extensivamente em programas MIL, nomeadamente, em código de alguma dimensão, obtido através da compilação de programas escritos numa linguagem de objetos concorrentes. Para além disso, pretendemos potenciar a integração da linguagem MIL, quer com linguagens de alto nível que tenham ...
– Name: TypeDocument
  Label: Document Type
  Group: TypDoc
  Data: master thesis
– Name: Language
  Label: Language
  Group: Lang
  Data: Portuguese
– Name: NoteTitleSource
  Label: Relation
  Group: SrcInfo
  Data: http://hdl.handle.net/10451/10264; 201291045
– Name: URL
  Label: Availability
  Group: URL
  Data: http://hdl.handle.net/10451/10264
– Name: Copyright
  Label: Rights
  Group: Cpyrght
  Data: openAccess
– Name: AN
  Label: Accession Number
  Group: ID
  Data: edsbas.EF32FA5B
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsbas&AN=edsbas.EF32FA5B
RecordInfo BibRecord:
  BibEntity:
    Languages:
      – Text: Portuguese
    Subjects:
      – SubjectFull: MIL
        Type: general
      – SubjectFull: Linguagem intermédia tipificada
        Type: general
      – SubjectFull: Condições de corrida
        Type: general
      – SubjectFull: Impasses
        Type: general
      – SubjectFull: Multiprocessador
        Type: general
      – SubjectFull: Teses de mestrado - 2013
        Type: general
    Titles:
      – TitleFull: Uma máquina virtual para uma linguagem concorrente intermédia
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Silva, Roberto Rosa da
      – PersonEntity:
          Name:
            NameFull: Martins, Francisco Cipriano da Cunha, 1972-
      – PersonEntity:
          Name:
            NameFull: Vasconcelos, Vasco Thudichum, 1964-
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 01
              M: 01
              Type: published
              Y: 2014
          Identifiers:
            – Type: issn-locals
              Value: edsbas
            – Type: issn-locals
              Value: edsbas.oa
ResultId 1