added multiple terms for clarification + fixed cmap warming

master
Peter Babič 9 years ago
parent ea8552f8bb
commit bf072929ff
  1. 67
      glossaries.tex
  2. 20
      problemexpres.tex
  3. 15
      rce
  4. BIN
      tukethesis.pdf
  5. 2
      tukethesis.tex

@ -21,7 +21,7 @@
\newacronym{usb}{USB}{Universal serial bus}
\newacronym[plural=OSes]{os}{OS}{Operating system}
\newacronym[plural=RTOSes]{rtos}{RTOS}{Real-time operating system}
\newacronym{ic}{IC}{integrated circuit}
\newacronym{ic}{IC}{integrated circuit, a chip}
\newacronym{eeprom}{EEPROM}{Electrically erasable programmable \acrshort{rom}}
\newacronym{pda}{PDA}{Personal digital assistant}
\newacronym{dsp}{DSP}{Digital signal processor}
@ -56,24 +56,24 @@
\newglossaryentry{ethernet}{
name=ethernet,
description={family of computer networking technologies for \glspl{lan} and \glspl{man}, conforming to standard \gls{ieee} 802.3}
description={family of \gls{computer} networking technologies for \glspl{lan} and \glspl{man}, conforming to standard \gls{ieee} 802.3}
}
\newglossaryentry{firmware}{
name=firmware,
description={the combination of a \gls{hw} device, e.g. an \gls{ic}, and computer instructions and data that reside as read only \gls{sw} on that device, it usually cannot be modified during normal operation of the device}
description={the combination of a \gls{hw} device, e.g. an \gls{ic}, and \gls{computer} instructions and data that reside as read only \gls{sw} on that device, it usually cannot be modified during normal operation of the device}
}
\newglossaryentry{flash}{
name=flash,
description={an electronic non-volatile computer storage medium (memory) that can be electrically erased and reprogrammed, next evolution of \gls{eeprom}}
description={an electronic non-volatile \gls{computer} storage medium (memory) that can be electrically erased and reprogrammed, next evolution of \gls{eeprom}}
}
\newglossaryentry{linux}{
name=linux,
description={an \Gls{unix}-like and mostly \acrshort{posix}-compliant computer \gls{os} assembled under the model of free and open-source \gls{sw} development and distribution, from the beginning maintained by Linus Torvalds},
description={an \Gls{unix}-like and mostly \acrshort{posix}-compliant \gls{computer} \gls{os} assembled under the model of free and open-source \gls{sw} development and distribution, from the beginning maintained by Linus Torvalds},
plural=linuces
}
\newglossaryentry{router}{
name=router,
description={a networking device that forwards data packets between computer networks, connected to two or more data lines from different networks}
description={a networking device that forwards data packets between \gls{computer} networks, connected to two or more data lines from different networks}
}
\newglossaryentry{system}{
name=system,
@ -81,21 +81,66 @@
}
\newglossaryentry{kernel}{
name=kernel,
description={a computer program that manages \gls{io} requests from software, and translates them into data processing instructions for the central processing unit and other electronic components of a computer, being a fundamental part of a modern computer's \gls{os}}
description={a \gls{computer} \gls{program} that manages \gls{io} requests from software, and translates them into data processing instructions for the central processing unit and other electronic components of a \gls{computer}, being a fundamental part of a modern \gls{computer}'s \gls{os}}
}
\newglossaryentry{shell}{
name=shell,
description={a user interface for access to an \gls{os}'s services, using either \gls{cli} or \gls{gui}, depending on a computer's role and particular operation}
description={a user interface for access to an \gls{os}'s services, using either \gls{cli} or \gls{gui}, depending on a \gls{computer}'s role and particular operation}
}
\newglossaryentry{interface}{
name=interface,
description={a shared boundary across which two separate components of a computer \gls{system} exchange information that can occur between \gls{sw}, computer \gls{hw}, peripheral devices, humans and combinations of these}
description={a shared boundary across which two separate components of a \gls{computer} \gls{system} exchange information that can occur between \gls{sw}, \gls{computer} \gls{hw}, peripheral devices, humans and combinations of these}
}
\newglossaryentry{unix}{
name=unix,
description={a family of multitaskings, multiuser computer \gls{os} that derive from the original AT\&T Unix, developed in the 1970s at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and others}
description={a family of multi-taskings, multi-user \gls{computer} \gls{os} that derive from the original AT\&T Unix, developed in the 1970s at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and others}
}
\newglossaryentry{android}{
name=android,
description={a mobile \gls{os} based on the \Gls{linux} \gls{kernel} and currently developed by Google, designed primarily for touchscreen mobile devices such as smartphones and tablet computers, and for specialized user \glspl{interface} like televisions (Android TV), cars (Android Auto), and wrist watches (Android Wear).}
description={a mobile \gls{os} based on the \Gls{linux} \gls{kernel} and currently developed by Google, designed primarily for touchscreen mobile devices such as smartphones and tablet \glspl{computer}, and for specialized user \glspl{interface} like televisions (Android TV), cars (Android Auto), and wrist watches (Android Wear).}
}
\newglossaryentry{network}{
name=network,
description={a medium that allows computing devices pass data to each other along links (data connections)}
}
\newglossaryentry{utility}{
name=utility,
description={is \gls{system} \gls{sw} designed to help analyze, configure, optimize or maintain a \gls{computer}},
plural=utilities
}
\newglossaryentry{library}{
name=library,
description={a collection of \glspl{program} and \gls{sw} packages made generally available, often loaded and stored on disk for immediate use}
}
\newglossaryentry{driver}{
name=driver,
description={a \gls{computer} \gls{program} that operates or controls a particular type of device that is attached to a \gls{computer}}
}
\newglossaryentry{compiler}{
name=compiler,
description={a \gls{computer} \gls{program} (or set of \glspl{program}) that transforms source code written in a programming language (the source language) into another \gls{computer} language (the target language, often having a binary form known as object code)}
}
\newglossaryentry{daemon}{
name=daemon,
description={a \gls{computer} \gls{program} running on the multi-tasking \glspl{os} in a background, rather than being under the direct control of an interactive user}
}
\newglossaryentry{command}{
name=command,
description={a directive to a \gls{computer} \gls{program} acting as an interpreter of some kind, in order to perform a specific task, commonly a directive to some kind of \gls{cli}, such as a \gls{shell}}
}
\newglossaryentry{computer}{
name=computer,
description={a programmable machine, that responds to a specific set of instructions in a well-defined manner and can execute a prerecorded list of instructions (a \gls{program}).}
}
\newglossaryentry{application}{
name=application,
description={a \gls{program}, or group of \glspl{program}, that is designed for the end user}
}
\newglossaryentry{program}{
name=program,
description={a specific set of ordered operations for a computer to perform}
}
\newglossaryentry{peripheral}{
name=peripheral,
description={a device that is connected to and works with a \gls{computer} in a some way, but is not essential to a \gls{computer}'s function}
}

@ -1,17 +1,17 @@
\section{Embedded system}
An embedded \gls{system} is some combination of computer \gls{hw} and \gls{sw}, either fixed in capability or programmable, that is specifically designed for a particular function \cite{ganssle2008embedded}. Industrial machines, automobiles, medical equipment, cameras, household appliances, airplanes, vending machines and toys (as well as the more obvious cellular phone and \gls{pda}) are among the myriad possible hosts of an embedded \gls{system}. Embedded \glspl{system} that are programmable are provided with programming \glspl{interface}, and embedded \glspl{system} programming is a specialized occupation.
An embedded \gls{system} is some combination of \gls{computer} \gls{hw} and \gls{sw}, either fixed in capability or programmable, that is specifically designed for a particular function \cite{ganssle2008embedded}. Industrial machines, automobiles, medical equipment, cameras, household appliances, airplanes, vending machines and toys (as well as the more obvious cellular phone and \gls{pda}) are among the myriad possible hosts of an embedded \gls{system}. Embedded \glspl{system} that are programmable are provided with programming \glspl{interface}, and embedded \glspl{system} programming is a specialized occupation.
\subsection{Processing units}
The term embedded \gls{system} is quite broad, so there is no surprise that the spectrum of used processing units is also wide. Since the general purpose microprocessors require external components, namely memories and peripherals, they tend to consume extra power and a board space. Since the design limitations of an embedded \glspl{system} are most of the time low physical size, low power consumption and/or long uptime and ruggedness (more components mean more parts could fail), microprocessors are seldom used. However, most of the commonly used architectures and word lengths are covered. Due to aforementioned reasons, microcontrollers are favored over microprocessors.
The term embedded \gls{system} is quite broad, so there is no surprise that the spectrum of used processing units is also wide. Since the general purpose microprocessors require external components, namely memories and \glspl{peripheral}, they tend to consume extra power and a board space. Since the design limitations of an embedded \glspl{system} are most of the time low physical size, low power consumption and/or long uptime and ruggedness (more components mean more parts could fail), microprocessors are seldom used. However, most of the commonly used architectures and word lengths are covered. Due to aforementioned reasons, microcontrollers are favored over microprocessors.
\subsection{System-on-chip}
Today's state of chip integration allows production costs of a complex \gls{system} on chip devices to be relatively low, thus making \gls{soc} attractive choice for embedded \glspl{system}. \glspl{soc} could be described as an \gls{ic} that integrates all components of a computer or other electronic \gls{system} into a single chip. It may contain digital, analog, mixed-signal, and often radio-frequency functions - all on a single chip substrate \cite{flynn2011computer}. \glspl{soc} are very common in the mobile electronics market because of their low power consumption. A typical \gls{soc} consists of (specific block diagram can be seen on \ref{f:ar_block}):
Today's state of chip integration allows production costs of a complex \gls{system} on chip devices to be relatively low, thus making \gls{soc} attractive choice for embedded \glspl{system}. \glspl{soc} could be described as an \gls{ic} that integrates all components of a \gls{computer} or other electronic \gls{system} into a single chip. It may contain digital, analog, mixed-signal, and often \gls{rf} functions - all on a single chip substrate \cite{flynn2011computer}. \glspl{soc} are very common in the mobile electronics market because of their low power consumption. A typical \gls{soc} consists of (specific block diagram can be seen on \ref{f:ar_block}):
\begin{itemize}
\item a microcontroller, microprocessor or \gls{dsp} core(s)
\item memory blocks including a selection of \gls{rom}, \gls{ram}, \gls{eeprom} and \Gls{flash}
\item timing sources including oscillators and phase-locked loops
\item peripherals including counter-timers, real-time timers and power-on reset generators
\item \glspl{peripheral} including counter-timers, real-time timers and power-on reset generators
\item external \glspl{interface}, including industry standards such as \gls{usb}, FireWire, \Gls{ethernet}, \gls{uart}, \gls{spi}
\item analog \glspl{interface} including \glspl{adc} and \glspl{dac}
\item voltage regulators and power management circuits
@ -21,9 +21,9 @@ Today's state of chip integration allows production costs of a complex \gls{syst
\glspl{soc} can be implemented as an \gls{asic} or using a \gls{fpga}.
\subsection{Operating system}
An \gls{os} is a computer program that supports a computer's basic functions, and provides services to other programs (or applications) that run on the computer. The applications provide the functionality that the user of the computer wants or needs. The services provided by the operating \gls{system} make writing the applications faster, simpler, and more maintainable.
An \gls{os} is a \gls{computer} \gls{program} that supports a \gls{computer}'s basic functions, and provides services to other \glspl{program} (or applications) that run on the \gls{computer}. The \glspl{application} provide the functionality that the user of the \gls{computer} wants or needs. The services provided by the operating \gls{system} make writing the applications faster, simpler, and more maintainable.
Over time, a lot of embedded \glspl{os} suited for embedded \glspl{system} were developed. An embedded \gls{os} is a type of \gls{os} that is embedded and specifically configured for a certain \gls{hw} configuration. \Gls{hw} that uses embedded \gls{os} is designed to be lightweight and compact, forsaking many other functions found in non-embedded (i.e. desktop) computer \glspl{system} in exchange for efficiency at resource usage \cite{holt2014embedded}. This means that they are made to do specific tasks and do them efficiently. Notable embedded \glspl{os} currently in use by consumers include:
Over time, a lot of embedded \glspl{os} suited for embedded \glspl{system} were developed. An embedded \gls{os} is a type of \gls{os} that is embedded and specifically configured for a certain \gls{hw} configuration. \Gls{hw} that uses embedded \gls{os} is designed to be lightweight and compact, forsaking many other functions found in non-embedded (i.e. desktop) \gls{computer} \glspl{system} in exchange for efficiency at resource usage \cite{holt2014embedded}. This means that they are made to do specific tasks and do them efficiently. Notable embedded \glspl{os} currently in use by consumers include:
\begin{itemize}
\item \textbf{Embedded \Gls{linux}} - used in many other devices like printers, \glspl{router} or smart TVs; \Gls{android} \ref{f:android_scr} is a derivative of embedded \Gls{linux}
@ -55,7 +55,7 @@ With the availability of consumer embedded devices, communities of users and dev
\subsection{Kernel}
The \gls{kernel} is the essential center of a computer \gls{os}, the core that provides basic services for all other parts of the \gls{os} \cite{bovet2005understanding}. It has complete control over what happens in the \gls{system}. A \gls{kernel} can be contrasted with a \gls{shell}, the outermost part of an \gls{os} that interacts with user commands. \Gls{kernel} and \gls{shell} are terms used more frequently in Unix or Unix-like \glspl{os} than in IBM mainframe or Microsoft Windows \glspl{system}.
The \gls{kernel} is the essential center of a \gls{computer} \gls{os}, the core that provides basic services for all other parts of the \gls{os} \cite{bovet2005understanding}. It has complete control over what happens in the \gls{system}. A \gls{kernel} can be contrasted with a \gls{shell}, the outermost part of an \gls{os} that interacts with user commands. \Gls{kernel} and \gls{shell} are terms used more frequently in Unix or Unix-like \glspl{os} than in IBM mainframe or Microsoft Windows \glspl{system}.
\begin{figure}[ht!]
\centering
@ -63,10 +63,10 @@ The \gls{kernel} is the essential center of a computer \gls{os}, the core that p
\caption{The simplified view on the \Gls{linux} \gls{system} structure}\label{f:linuxbl}
\end{figure}
The simplified view on the \Gls{linux} \gls{system} structure can be seen on \ref{f:linuxbl}. It does not include device drivers, compilers, deamon, utilities, commands, library files and such, but should be enough for a demonstration.
The simplified view on the \Gls{linux} \gls{system} structure can be seen on \ref{f:linuxbl}. It does not include device \gls{driver}, \glspl{compiler}, \glspl{daemon}, \glspl{utility}, \glspl{command}, \gls{library} files and such, but should be enough for a demonstration.
\subsection{OpenWRT}
OpenWrt is an \gls{os} (in particular, an embedded \gls{os}) based on the \Gls{linux} \gls{kernel}, primarily used on embedded devices to route network traffic. It has been optimized for size, to be small enough for fitting into the limited storage and memory available in home \glspl{router}.
OpenWrt is an \gls{os} (in particular, an embedded \gls{os}) based on the \Gls{linux} \gls{kernel}, primarily used on embedded devices to route \gls{network} traffic. It has been optimized for size, to be small enough for fitting into the limited storage and memory available in home \glspl{router}.
OpenWrt is configured using a command-line \gls{interface} (ash \gls{shell}), or a web \gls{interface} (LuCI). There are about 3500 optional \gls{sw} packages available for installation via the opkg package management \gls{system}.
@ -143,7 +143,7 @@ The Atheros AR9331 is a highly integrated and cost effective \gls{ieee} 802.11n
\subsection{From TL-WR703N to GL.inet}
TP-Link TL-WR703N \gls{router} is a popular choice among \gls{hw} customisation community because of it's cheap price tag compared to processing power and usage of a full-grown \Gls{linux} distribution. People have figured out how to upgrade \gls{ram} / \Gls{flash} memories or to make use of not used \gls{gpio} / UART ports for their own needs. These solutions however were mostly crude and expensive to replicate. The GL.inet team saw an opportunity to grasp this public knowledge and rolled out their own improved board clone to the marked.
Whole printed circuit board of TL-WR703N was remade by the GL.inet team to expose the unused \gls{gpio} ports on the \gls{soc}, utilize two \Gls{ethernet} port instead of one and utilize the \gls{usb} 2.0 port. Memory chips were replaced by their higher capacity alternatives.
Whole printed circuit board of TL-WR703N was remade by the GL.inet team to expose the unused \gls{gpio} pins on the \gls{soc}, utilize two \Gls{ethernet} port instead of one and utilize the \gls{usb} 2.0 port. Memory chips were replaced by their higher capacity alternatives.
\begin{figure}[ht!]
\centering

15
rce

@ -1,15 +0,0 @@
\glossarysection[\glossarytoctitle]{\glossarytitle}\glossarypreamble
\begin{theglossary}\glossaryheader
\glsgroupheading{A}\relax \glsresetentrylist %
\glossentry{abc}{\glossaryentrynumbers{\relax
\setentrycounter[]{page}\glsnumberformat{1}}}\glsgroupskip
\glsgroupheading{G}\relax \glsresetentrylist %
\glossentry{gcd}{\glossaryentrynumbers{\relax
\setentrycounter[]{page}\glsnumberformat{1}}}\glsgroupskip
\glsgroupheading{L}\relax \glsresetentrylist %
\glossentry{lcm}{\glossaryentrynumbers{\relax
\setentrycounter[]{page}\glsnumberformat{1}}}\glsgroupskip
\glsgroupheading{X}\relax \glsresetentrylist %
\glossentry{xxx}{\glossaryentrynumbers{\relax
\setentrycounter[]{page}\glsnumberformat{1}}}%
\end{theglossary}\glossarypostamble

BIN
tukethesis.pdf (Stored with Git LFS)

Binary file not shown.

@ -5,8 +5,8 @@
%% -------------------------------------------------------------------------
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{cmap}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{csquotes}
%\usepackage[justification=centering]{caption}

Loading…
Cancel
Save