hh.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
A Language-Based Approach to Protocol Stack Implementation in Embedded Systems
Halmstad University, School of Information Science, Computer and Electrical Engineering (IDE), Halmstad Embedded and Intelligent Systems Research (EIS), Embedded Systems (CERES).
2009 (English)Licentiate thesis, comprehensive summary (Other academic)
Abstract [en]

Embedded network software has become increasingly interesting for both researchand business as more and more networked embedded systems emerge.Well-known infrastructure protocol stacks are reimplemented on new emergingembedded hardware and software architectures. Also, newly designed orrevised protocols are implemented in response to new application requirements.However, implementing protocol stacks for embedded systems remains a timeconsumingand error-prone task due to the complexity and performance-criticalnature of network software. It is even more so when targeting resource constrainedembedded systems: implementations have to minimize energy consumption,memory usage and so on, while programming efficiency is needed toimprove on time-to-market, scalability, maintainability and product evolution.Therefore, it is worth researching on how to make protocol stack implementationsfor embedded systems both easier and more likely to be correct withinthe resource limits.In the work we present in this thesis, we take a language-based approachand aim to facilitate the implementation of protocol stacks while realizingperformance demands and keeping energy consumption and memory usagewithin the constraints imposed by embedded systems. Language technologyin the form of a type system, a runtime system and compiler transformationscan then be used to generate efficient implementations. We define a domainspecificembedded language (DSEL), Implementation of Protocol Stacks (IPS),for declaratively describing overlaid protocol stacks. In IPS, a high-level packetspecification is dually compiled into an internal data representation for protocollogic implementation, and packet processing methods which are thenintegrated into the dataflow framework of a protocol overlay specification.IPS then generates highly portable C code for various architectures from thissource. We present the compilation framework for generating packet processingand protocol logic code, and a preliminary evaluation of our compiled code.

Place, publisher, year, edition, pages
Örebro: Örebro University , 2009. , 90 p.
Series
Studies from the School of Science and Technology at Örebro University, 9
Identifiers
URN: urn:nbn:se:hh:diva-94OAI: oai:DiVA.org:hh-94DiVA: diva2:235613
Presentation
(English)
Supervisors
Projects
IPS
Available from: 2010-09-27 Created: 2009-09-17 Last updated: 2010-09-27Bibliographically approved
List of papers
1. A Library for Processing Ad hoc Data in Haskell: Embedding a Data Description Language
Open this publication in new window or tab >>A Library for Processing Ad hoc Data in Haskell: Embedding a Data Description Language
2011 (English)In: Implementation and application of functional languages / [ed] Scholz, SB; Chitil, O, Springer, 2011, , 16 p.174-191 p.Conference paper, Published paper (Refereed)
Abstract [en]

Ad hoc data formats, i.e. semistructured non-standard dataformats, are pervasive in many domains that need software tools—bioinformatics,demographic surveys, geophysics and network software are justa few. Building tools becomes easier if parsing and other standard inputoutputprocessing can be automated. Modern approaches for dealingwith ad hoc data formats consist of domain specific languages based ontype systems. Compilers for these languages generate data structures andparsing functions in a target programming language in which tools andapplications are then written. We present a monadic library in Haskellthat implements a data description language. Using our library, Haskellprogrammers have access to data description primitives that can be usedfor parsing and that can be integrated with other libraries and applicationprograms without the need of yet another compiler.

Place, publisher, year, edition, pages
Springer, 2011. 16 p.
Series
Lecture Notes in Computer Science, ISSN 0302-9743 ; 5836
Keyword
Ad hoc Data, Haskell
National Category
Engineering and Technology
Identifiers
urn:nbn:se:hh:diva-95 (URN)000307082400010 ()2-s2.0-80053964182 (Scopus ID)978-3-642-24451-3 (ISBN)
Conference
20th International Symposium, Implementation and Application of Functional Languages, IFL 2008
Projects
IPS
Available from: 2009-10-05 Created: 2009-09-17 Last updated: 2012-09-28Bibliographically approved
2. A Domain Specific Approach to Network Software Architecture: Assuring Conformance Between Architecture and Code
Open this publication in new window or tab >>A Domain Specific Approach to Network Software Architecture: Assuring Conformance Between Architecture and Code
2009 (English)In: Fourth International Conference on Digital Telecommunications, 2009. ICDT '09, Piscataway, N.J.: IEEE Press, 2009, 127-132 p.Conference paper, Published paper (Refereed)
Abstract [en]

Network software is typically organized according toa layered architecture that is well understood. However, writingcorrect and efficient code that conforms with the architecture stillremains a problem. To overcome this problem we propose to usea domain specific language based approach. The architecturalconstraints are captured in a domain specific notation that can beused as a source for automatic program generation. Conformancewith the architecture is thus assured by construction. Knowledgefrom the domain allows us to generate efficient code. In addition,this approach enforces reuse of both code and designs, one ofthe major concerns in software architecture. In this paper, weillustrate our approach with PADDLE, a tool that generates packetprocessing code from packet descriptions. To describe packets weuse a domain specific language of dependent types that includespacket overlays. From the description we generate C librariesfor packet processing that are easy to integrate with other partsof the code. We include an evaluation of our tool.

Place, publisher, year, edition, pages
Piscataway, N.J.: IEEE Press, 2009
Keyword
Network Software Architecture
National Category
Telecommunications Engineering and Technology
Identifiers
urn:nbn:se:hh:diva-96 (URN)10.1109/ICDT.2009.4 (DOI)000274805500026 ()2-s2.0-70449602416 (Scopus ID)978-0-7695-3695-8 (ISBN)
Conference
Fourth International Conference on Digital Telecommunications, 2009. ICDT '09
Note

©2009 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.

Available from: 2009-10-05 Created: 2009-09-17 Last updated: 2012-09-28Bibliographically approved

Open Access in DiVA

fulltext(874 kB)2393 downloads
File information
File name FULLTEXT01.pdfFile size 874 kBChecksum SHA-512
b6bbd5fe841dd0b8cbb1e0c2e53e0de15196821f3429482ebe54fc81b8f652c5140053fbcbd85503ec717c8f2787df2713e084d0644ed6a1fc77bf9166b56017
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Wang, Yan
By organisation
Embedded Systems (CERES)

Search outside of DiVA

GoogleGoogle Scholar
Total: 2393 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

Total: 155 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf