376 resultados para Linux Linux
Resumo:
HIRFL-CSR(Heavy Ion Research Facility at LanZhou-Cooling Storage Ring兰州重离子冷却储存环)是国家重大科学工程,其控制系统是一个庞大的系统,由许多分控制系统组成,磁场电源控制系统是CSR控制系统中很重要的一部分。加速器运行的所有过程都为电源所控制,所以我们的控制系统的直接控制对象就是磁场电源。为了保证CSR正常运行,控制过程波形的跟踪精度、速度和稳定度,是数字电源调节器的关键所在。电源控制系统以嵌入式处理器ARM、现场可编程门阵列FPGA为核心,实现了远程数据采集、网络通讯和自动控制等功能。本系统可以进行现场监控与调试,也可以通过集成的100Mbps以太网接口电路进行远程监测与控制,CSR上各处输出电压值和电源运行状态自动传送到中央控制中心,中控中心也可以发送命令查询当前电源设备状态和各种读数。本文主要介绍了基于ARM和FPGA的嵌入式电源控制系统的设计与实现。内容主要包括:(1)系统各部分硬件电路设计与电源控制功能实现 ,硬件系统调试 。(2)装载嵌入式Linux操作系统,测试平台接口信号,通过FPGA生成多路数字PWM波形。本文目的是解决CSR电源控制系统问题,但对于许多远程数据采集与控制等问题的解决有重要参考价值
Resumo:
HIRFL-CSR(兰州重离子冷却储存环)是国家“九五”重大科学工程之一。CSR控制系统是保证CSR正常运行的重要环节。这是一个基于以太网的分布式控制系统,它由两部分组成:总体控制服务器系统和前端控制服务器系统。 本文介绍了应用于CSR前端控制系统中的嵌入式总线控制器。首先介绍了嵌入式总线控制器的硬件设计方案。系统以32位高速双以太网处理器JUPITER为核心。JUPITER是一款低成本、高性能、建立在以太网系统基础之上的处理器。该系统的外阴电路主要包括存储模块、接日模块、总线控制模块。接口模块有RS485、RS232和网络接口电路。其次论述了嵌入式操作系统uClinux的体系结构以及uClinux与标准Linux的不同之处。论文从uClinux的内核结构出发,讨论了源代码的组织结构,概括分析了uClinuxlj勺内存管理、进程管理。最后介绍了uClinujx统的移植方法和应用实现。uClinux移植主要包括引导装载程序、uClinux内核和文件系统三个部分。在引导装载程序的移植过程中,论文重点给出了一种固化引导装载程序的方法;在uClinux内核移植中,讨沦了交叉编译环境l为建立和uClinux内核配置方法,总结了uClinux内核移植的层次结构和具体的移植过程。沦文通过对嵌入式处理器的分析,以及对嵌入式操作系统移植的探讨,展示了嵌入式系统开发的核心技术,对眠入系统的开发应用具有一定的实际意义。
Resumo:
随着计算机应用从桌面环境扩展到移动环境,计算机用户从专业化走向大 众化,传统的 WIMP界面的缺点逐渐体现出来。笔式用户界面作为 Post-WIMP 界面的一种重要形式,具有自然、和谐的交互特性,成为当前研究的热点之一。 针对这一方向,本文对笔式用户界面范式展开了研究。首先,本文阐述了一种 新的基于笔交互的界面范式 PGIS,定义了纸、小工具等交互组件,以及各种组 件的显示形态及交互形式。然后,实现了 PGIS 界面,包括交互对象的管理、 显示等内容。最后,详细介绍了 PGIS 界面的使用过程,并用一个应用实例加 以验证。为了支持上层应用程序的可移植性和可维护性,PGIS界面的使用采用 了模型驱动构架的开发思想。目前,我们基于 PGIS 界面开发了几款优秀的笔 式交互软件,如幼儿教学系统、便签本系统、篮球战术板系统等。这些系统完 全满足用户对笔交互应用程序的需求,目前可在 Linux 系统、Windows 系统等 多种系统上运行。PGIS界面范式的可行性也因此得到了很好的验证。 本文的主要内容有以下几点: 1. 阐述了一种 Post-WIMP范畴下的新的界面范式:PGIS。 本文在对Post-WIMP界面做了充分地理解和分析的基础上,阐述了一种新 的界面范式:PGIS。这是一种基于笔交互的界面范式,文中对该范式的纸笔隐 喻方式、所包含的内容、各交互组件的表现形式、以及各组件间的静态及动态 关系做出了详细的描述。 2. 实现了PGIS界面。 为了验证PGIS界面范式的可行性,并直接支持基于 PGIS范式的应用程序 开发,本文详细介绍了PGIS界面的实现细节,其中包括PGIS界面中所包含的 元素、PGIS界面中交互对象的显示、交互对象的管理、以及交互对象对基本原 语的转换和响应。 3. 介绍了 PGIS界面的使用过程。 整个使用过程采用模型驱动架构的思想,引入对以下三个子模块的调用: 与平台相关的底层核心库和 PGIS 引擎、与平台无关的场景设计工具。这三个 子模块决定了上层应用程序的可移植性和可维护性。另外,场景设计工具提供 了代码自动生成的功能,大幅度缩短了应用程序的开发周期。 4. 实现了一个基于 PGIS界面的幼儿教学系统。 为了说明 PGIS界面的使用流程,本文设计并实现了一个基于PGIS界面的 幼儿教学系统。在开发过程中,大部分工作在场景设计工具中快速完成,小部 分工具集中在数据管理库、场景任务库的开发上。该系统的评估结果很好地验 证了 PGIS界面范式的可行性。
Resumo:
在现代文件系统中,用户只能访问文件和目录的当前版本,而无法查看文件和目录的改变过程。用户可能无意地或错误地对文件执行了删除或修改操作,或者执行了一段恶意脚本,导致一系列文件遭到破坏。如果能够记录文件和目录的修改过程,并且可以方便地恢复某次操作破坏的一系列文件,这对用户是相当有帮助的。本文把一个进程在其执行过程中对文件的一系列修改称为一个事件。 文件系统可以通过文件版本化技术来记录文件的修改过程。文件版本化技术包括两种:快照技术和单文件版本化技术。这两种技术都没有提供用户一种方便有效的方法来撤销一个进程对多个文件的一系列修改,无法撤消一个事件对文件的改变。所以,本文在单文件版本化技术的基础上提出了基于事件的文件系统恢复技术,并设计实现了一个具有事件恢复功能的文件系统GobackFS(Go back file system,简称GobackFS)。本文的主要贡献体现在以下几点: (1) 针对如何恢复一个进程在其运行过程中改变的一系列文件这一问题,本文提出了基于事件的文件系统恢复技术,并通过一个实例——GobackFS文件系统,给出了基于事件的文件系统恢复技术的一种设计与实现。 (2) 对用户完全透明的系统设计和实现。GobackFS文件系统透明地创建文件版本,记录文件的改变过程。在GobackFS文件系统中,如果文件以写标志打开时,创建一个新的文件版本,在文件每一次打开和关闭期间最多创建一个新版本。文件的访问权限和所有权发生变化时,创建新的文件子版本。GobackFS文件系统透明地记录改变文件的事件信息。在创建文件版本和子版本时,记录触发文件版本创建的事件信息。 (3) 提供了简单易用的使用接口。在GobackFS文件系统中,用户可以通过一条简单的命令来查看某段时间内哪些事件对文件做了更改,某个事件对哪些文件做了更改,并且通过一条命令就可以撤销某个事件对一系列文件的更改。另外,用户还可以方便的查看单个文件的所有保留版本,并可以恢复到任意版本。 (4) 方便移植的系统架构。GobackFS文件系统基于FUSE框架实现,是一个用户空间文件系统,可以方便地移植到多个Unix/Linux系统中使用,而不需要对内核做任何修改,也不需要复杂的配置。
Resumo:
近年来,随着微纳米科技的迅速发展,机电产品有望向更微观化、高性能化发展,这将促进材料、制造、电子、生物医学、信息等领域新的科学技术出现,在新的科学技术层次上为可持续发展的理论提供物质和技术保障。微纳米科技最终目标是研究和发现微纳尺度物质所具有的新颖的物理、化学和生物学现象与特性。并以此为基础来设计、制作、组装成新的材料、组件或系统,实现与之相应的特定功能,促进新的科学技术发展与变革,这无疑具有十分重要的科学意义和经济价值。而实现这个目标的使能技术便是微纳米尺度下观测、操作和装配的科学方法与相关的技术和装备,因此开展微纳米操作研究具有特别重要的意义。微纳米操作是微纳米制造科学技术的重要内容之一,使用探针模式的机器人化微纳操作方法,实现在微纳米尺度物体的可控操作,对促进我国微纳米科学技术发展具有特别重要的意义。 目前已有的基于探针的纳米技术装置如SPM (Scanning Probe Microscope)是基于探针模式的纳米观测基本装置。在此基础上研究发展的基于探针的纳米操作已成为纳米科技研究的新领域,是目前世界上各国正在大力开发的前沿研究课题。但目前市场上的SPM等纳米观测设备缺乏驱动控制与信息交互功能和开放界面,限制了用户在此基础上开发纳米操作、装配等功能的能力,因而研究具有信息交互能力的、可进行在线操作控制与宏-微-纳观信息交互的纳米操作监控系统,进而发展成具有自动化/机器人化功能的纳米作业系统队纳米科学技术发展、纳米制造的实现无疑具有重要意义。本论文的科研内容是以面向纳米制造的机器人化系统为研究背景,在自主技术的基础上,开展应用ARM嵌入式系统构成纳米作业系统的实时控制器研究。实时多任务的操作控制系统是纳米作业系统的核心技术,可以实时进行基于探针的传感信息采集、状态反馈控制、形貌观测数据生成、作业运动轨迹生成、位置反馈控制等功能的数据处理与实现。本论文重点介绍以SAMSUNG公司的ARM9处理器芯片S3C2410为嵌入式控制器系统的核心,在移植嵌入式Linux作为操作系统的基础上,开发具有实时数据采集与控制指令、通信功能的人机交互界面。基于ARM的实时控制器的研究为探针模式的纳米观测与操作系统开发提供了关键技术,可以提供开放的AFM系统,促进操作型纳米系统的研究与实现,可以保证纳米观测与操作控制的实时性,可以为纳米作业控制方法提供方便的编程、开发功能。本论文主要研究了面向纳米作业的基于ARM嵌入式实时控制器硬件结构及软件系统的研究与开发过程。首先介绍嵌入式系统的基本概念和特点;其次介绍基于SPM模式的纳米操作系统性能与技术特点;第三,根据纳米作业系统的技术功能要求,详细介绍了具有实时多任务管理功能的硬件系统的设计,重点解决核心板和扩展板各部分功能模块的设计;第四,详细介绍了嵌入式Linux操作系统下的应用程序开发模式及开发过程;最后,详细介绍了嵌入式Linux操作系统下的应用程序开发,主要工作是完成SPM纳米操作系统中的ARM开发平台的功能接口模块的调试及Linux系统下多线程技术在本系统中的应用。本次毕业设计已完成ARM开发平台在整个SPM纳米操作系统中要实现的各个功能模块,结合SPM纳米操作系统的实时性问题,进行了ARM开发平台的系统软件架构分析和利用多线程技术的以太网通信实验,在一定程度上提高了纳米操作系统中的实时性和成像质量。
Resumo:
介绍了一种基于嵌入式ARM9技术的微型ROV的控制装置及控制方法。该装置可以同时进行两通道串行通讯,实现微型ROV的视频信号、潜水深度、艏向角度、纵倾角度、横摇角度、电子舱温度等数据的采集和与上位机的通讯传输;该装置可以采集16路模拟量信号和12路数字量信号,输出4路模拟量信号和12路TTL电平信号,实现推进器、水下灯、水下摄像机、云台等ROV功能器件的驱动。该装置具有通讯能力强、集成度高、功耗低等特点,可以满足微型ROV所有的常用功能要求。
Resumo:
Este documento consiste no estudo, análise e identificação de uma solução voltada para a recuperação de dados no Sistema Gerenciador de Banco de Dados (SGBD) PostgreSQL. A solução em recuperação de dados, aqui apresentada, foi testada e direcionada para o sistema operacional Linux Ubuntu, porém a mesma é compatível com outras distribuições, bem como passível de ser implementada e executada em outros sistemas operacionais, nos quais funcionam o SGBD PostgreSQL, resguardadas as suas respectivas peculiaridades, ou, basicamente, a nomenclatura e o formato dos comandos empregados relativos ao sistema operacional adotado.
Resumo:
Este documento apresenta os procedimentos para instalação e utilização do sistema NAVLivre 1.0, um software de código livre desenvolvido para o processamento automático de imagens do sensor Advanced Very High Resolution Radiometer (AVHRR) a bordo dos satélites da National Oceanic Atmospheric Administration (NOAA). O NAVLivre é uma derivação do sistema NAVPRO, criado pela Embrapa Informática Agropecuária em parceria com a Universidade Estadual de Campinas (Unicamp), que contou com o repasse do pacote computacional NAV (NAVigation), desenvolvido pelo Colorado Center for Astrodynamics Research (CCAR), da Universidade do Colorado, Boulder, EUA. O diferencial do NAVLivre é a ausência dos módulos desenvolvidos em Interactive Data Language (IDL), presentes no NAVPRO, e dependentes de softwares proprietários. O NAVLivre é um pacote totalmente livre, que realiza de forma automática as principais etapas do processamento das imagens NOAA, como a correção radiométrica, o georreferenciamento preciso e a geração da imagem final em formato GeoTIFF, compatível com os principais pacotes de processamento de imagens. O NAVLivre é executado em plataforma Linux e foi implementado em script c-shell e linguagem C. Seu uso é indicado aos usuários avançados de imagens NOAA, que demandam o processamento em lote de grandes volumes de dados. As rotinas e scripts aqui descritos são de domínio público, podendo ser alterados conforme necessidade do usuário.
Resumo:
Mesmo que o Windows ainda seja, disparado, o sistema operacional mais utilizado e conhecido pelas pessoas no mundo todo, o Linux vem se difundindo cada vez mais em diversos nichos da população, sejam profissionais de informática ou não. Uma das grandes vantagens do Linux sobre seu concorrente é a diversidade de comandos que seu terminal shell (interface de linha de comando) possui, o que se tornou uma característica forte deste sistema operacional. O awk é um desses comandos que faz o terminal shell do Linux ser a marca forte desse sistema. É um comando tão importante e com tantas funcionalidades que muitos o confundem com uma linguagem de programação. O presente trabalho procura fazer uma pequena introdução sobre as principais possibilidades de utilização do awk, desde a construção de simples linhas de comando até a programação de pequenos scripts para execução no shell do Linux.
Resumo:
O documento descreve o processo de instalação de ambientes virtuais para servidores, utilizando o hypervisor Xen e tendo-se um sistema Linux Ubuntu (Lucid release) como Dom0. Descreve-se o processo de instalação do Xen 3.3 e 4.0 e também a instalação de hóspedes HVM (totalmente virtualizados) e PV (paravirtualizados). São apresentados também alguns testes comparando o desempenho de sistemas rodando em máquinas reais e em máquinas virtuais.
Resumo:
Internet Traffic Managers (ITMs) are special machines placed at strategic places in the Internet. itmBench is an interface that allows users (e.g. network managers, service providers, or experimental researchers) to register different traffic control functionalities to run on one ITM or an overlay of ITMs. Thus itmBench offers a tool that is extensible and powerful yet easy to maintain. ITM traffic control applications could be developed either using a kernel API so they run in kernel space, or using a user-space API so they run in user space. We demonstrate the flexibility of itmBench by showing the implementation of both a kernel module that provides a differentiated network service, and a user-space module that provides an overlay routing service. Our itmBench Linux-based prototype is free software and can be obtained from http://www.cs.bu.edu/groups/itm/.
Resumo:
Current low-level networking abstractions on modern operating systems are commonly implemented in the kernel to provide sufficient performance for general purpose applications. However, it is desirable for high performance applications to have more control over the networking subsystem to support optimizations for their specific needs. One approach is to allow networking services to be implemented at user-level. Unfortunately, this typically incurs costs due to scheduling overheads and unnecessary data copying via the kernel. In this paper, we describe a method to implement efficient application-specific network service extensions at user-level, that removes the cost of scheduling and provides protected access to lower-level system abstractions. We present a networking implementation that, with minor modifications to the Linux kernel, passes data between "sandboxed" extensions and the Ethernet device without copying or processing in the kernel. Using this mechanism, we put a customizable networking stack into a user-level sandbox and show how it can be used to efficiently process and forward data via proxies, or intermediate hosts, in the communication path of high performance data streams. Unlike other user-level networking implementations, our method makes no special hardware requirements to avoid unnecessary data copies. Results show that we achieve a substantial increase in throughput over comparable user-space methods using our networking stack implementation.
Resumo:
This paper presents a new approach to window-constrained scheduling, suitable for multimedia and weakly-hard real-time systems. We originally developed an algorithm, called Dynamic Window-Constrained Scheduling (DWCS), that attempts to guarantee no more than x out of y deadlines are missed for real-time jobs such as periodic CPU tasks, or delay-constrained packet streams. While DWCS is capable of generating a feasible window-constrained schedule that utilizes 100% of resources, it requires all jobs to have the same request periods (or intervals between successive service requests). We describe a new algorithm called Virtual Deadline Scheduling (VDS), that provides window-constrained service guarantees to jobs with potentially different request periods, while still maximizing resource utilization. VDS attempts to service m out of k job instances by their virtual deadlines, that may be some finite time after the corresponding real-time deadlines. Notwithstanding, VDS is capable of outperforming DWCS and similar algorithms, when servicing jobs with potentially different request periods. Additionally, VDS is able to limit the extent to which a fraction of all job instances are serviced late. Results from simulations show that VDS can provide better window-constrained service guarantees than other related algorithms, while still having as good or better delay bounds for all scheduled jobs. Finally, an implementation of VDS in the Linux kernel compares favorably against DWCS for a range of scheduling loads.
Resumo:
With the increased use of "Virtual Machines" (VMs) as vehicles that isolate applications running on the same host, it is necessary to devise techniques that enable multiple VMs to share underlying resources both fairly and efficiently. To that end, one common approach is to deploy complex resource management techniques in the hosting infrastructure. Alternately, in this paper, we advocate the use of self-adaptation in the VMs themselves based on feedback about resource usage and availability. Consequently, we define a "Friendly" VM (FVM) to be a virtual machine that adjusts its demand for system resources, so that they are both efficiently and fairly allocated to competing FVMs. Such properties are ensured using one of many provably convergent control rules, such as AIMD. By adopting this distributed application-based approach to resource management, it is not necessary to make assumptions about the underlying resources nor about the requirements of FVMs competing for these resources. To demonstrate the elegance and simplicity of our approach, we present a prototype implementation of our FVM framework in User-Mode Linux (UML)-an implementation that consists of less than 500 lines of code changes to UML. We present an analytic, control-theoretic model of FVM adaptation, which establishes convergence and fairness properties. These properties are also backed up with experimental results using our prototype FVM implementation.
Resumo:
Server performance has become a crucial issue for improving the overall performance of the World-Wide Web. This paper describes Webmonitor, a tool for evaluating and understanding server performance, and presents new results for a realistic workload. Webmonitor measures activity and resource consumption, both within the kernel and in HTTP processes running in user space. Webmonitor is implemented using an efficient combination of sampling and event-driven techniques that exhibit low overhead. Our initial implementation is for the Apache World-Wide Web server running on the Linux operating system. We demonstrate the utility of Webmonitor by measuring and understanding the performance of a Pentium-based PC acting as a dedicated WWW server. Our workload uses a file size distribution with a heavy tail. This captures the fact that Web servers must concurrently handle some requests for large audio and video files, and a large number of requests for small documents, containing text or images. Our results show that in a Web server saturated by client requests, over 90% of the time spent handling HTTP requests is spent in the kernel. Furthermore, keeping TCP connections open, as required by TCP, causes a factor of 2-9 increase in the elapsed time required to service an HTTP request. Data gathered from Webmonitor provide insight into the causes of this performance penalty. Specifically, we observe a significant increase in resource consumption along three dimensions: the number of HTTP processes running at the same time, CPU utilization, and memory utilization. These results emphasize the important role of operating system and network protocol implementation in determining Web server performance.