QNX V6.5 ON ARM. 1: Dedicated Systems Experts, 2: VUB-Brussels, 3: RMA-Brussels
|
|
|
- Donald Jackson
- 9 years ago
- Views:
Transcription
1 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. QNX V6.5 ON ARM Copyright Dedicated Systems NV. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems NV, Diepenbeemd 5, B-1650 Beersel, Belgium. Authors: Luc Perneel (1, 2), Hasan Fayyad-Kazan (2) and Martin Timmerman (1, 2, 3) 1: Dedicated Systems, 2: VUB-Brussels, 3: RMA-Brussels Disclaimer Although all care has been taken to obtain correct information and accurate test results, Dedicated Systems, VUB-Brussels, RMA-Brussels and the authors cannot be liable for any incidental or consequential damages (including damages for loss of business, profits or the like) arising out of the use of the information provided in this report, even if these organisations and authors have been advised of the possibility of such damages. QNX v6.5 on ARM Page 1 of 40
2 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. EVALUATION REPORT LICENSE This is a legal agreement between you (the downloader of this document) and/or your company and the company DEDICATED SYSTEMS EXPERTS NV, Diepenbeemd 5, B-1650 Beersel, Belgium. It is not possible to download this document without registering and accepting this agreement on-line. 1. GRANT. Subject to the provisions contained herein, Dedicated Systems hereby grants you a nonexclusive license to use its accompanying proprietary evaluation report for projects where you or your company are involved as major contractor or subcontractor. You are not entitled to support or telephone assistance in connection with this license. 2. PRODUCT. Dedicated Systems shall furnish the evaluation report to you electronically via Internet. This license does not grant you any right to any enhancement or update to the document. 3. TITLE. Title, ownership rights, and intellectual property rights in and to the document shall remain in Dedicated Systems and/or its suppliers or evaluated product manufacturers. The copyright laws of Belgium and all international copyright treaties protect the documents. 4. CONTENT. Title, ownership rights, and an intellectual property right in and to the content accessed through the document is the property of the applicable content owner and may be protected by applicable copyright or other law. This License gives you no rights to such content. 5. YOU CANNOT: You cannot, make (or allow anyone else make) copies, whether digital, printed, photographic or others, except for backup reasons. The number of copies should be limited to 2. The copies should be exact replicates of the original (in paper or electronic format) with all copyright notices and logos. You cannot, place (or allow anyone else place) the evaluation report on an electronic board or other form of on line service without authorisation. 6. INDEMNIFICATION. You agree to indemnify and hold harmless Dedicated Systems against any damages or liability of any kind arising from any use of this product other than the permitted uses specified in this agreement. 7. DISCLAIMER OF WARRANTY. All documents published by Dedicated Systems on the World Wide Web Server or by any other means are provided "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. This disclaimer of warranty constitutes an essential part of the agreement. 8. LIMITATION OF LIABILITY. Neither Dedicated Systems nor any of its directors, employees, partners or agents shall, under any circumstances, be liable to any person for any special, incidental, indirect or consequential damages, including, without limitation, damages resulting from use of OR RELIANCE ON the INFORMATION presented, loss of profits or revenues or costs of replacement goods, even if informed in advance of the possibility of such damages. 9. ACCURACY OF INFORMATION. Every effort has been made to ensure the accuracy of the information presented herein. However Dedicated Systems assumes no responsibility for the accuracy of the information. Product information is subject to change without notice. Changes, if any, will be incorporated in new editions of these publications. Dedicated Systems may make improvements and/or changes in the products and/or the programs described in these publications at any time without notice. Mention of non-dedicated Systems products or services is for information purposes only and constitutes neither an endorsement nor a recommendation. 10. JURISDICTION. In case of any problems, the court of BRUSSELS-BELGIUM will have exclusive jurisdiction. Agreed by downloading the document via the internet. QNX v6.5 on ARM Page 2 of 40
3 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 1 Document Intention Purpose and scope Document issue: the 2.9 framework Related documents Introduction Overview Evaluated (RTOS) product Software Hardware Evaluation results summary Positive points Negative points Ratings Test Results Calibration system test (CAL) Tracing overhead (CAL-P-TRC) CPU power (CAL-P-CPU) Clock tests (CLK) Operating system clock setting (CLK-B-CFG) Clock tick processing duration (CLK-P-DUR) Thread tests (THR) Thread creation behaviour (THR-B-NEW) Round robin behaviour (THR-B-RR) Thread switch latency between same priority threads (THR-P-SLS) Thread creation and deletion time (THR-P-NEW) Semaphore tests (SEM) Semaphore locking test mechanism (SEM-B-LCK) Semaphore releasing mechanism (SEM-B-REL) Time needed to create and delete a semaphore (SEM-P-NEW) Test acquire-release timings: contention case (SEM-P-ARN) Test acquire-release timings: contention case (SEM-P-ARC) Mutex tests (MUT) Priority inversion avoidance mechanism (MUT-B-ARC) Mutex acquire-release timings: contention case (MUT-P-ARC) Mutex acquire-release timings: no-contention case (MUT-P-ARN) Interrupt tests (IRQ) Interrupt latency (IRQ_P_LAT) Interrupt dispatch latency (IRQ_P_DLT) Interrupt to thread latency (IRQ_P_TLT) Maximum sustained interrupt frequency (IRQ_S_SUS) Memory tests QNX v6.5 on ARM Page 3 of 40
4 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Memory leak test (MEM_B_LEK) Appendix A: Vendor comments Appendix B: Acronyms QNX v6.5 on ARM Page 4 of 40
5 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. DOCUMENT CHANGE LOG Issue No. Revised Issue Date Para's / Pages Affected Reason for Change 2.01 July 25, 2011 All Initial draft patch included 2.02 July 27, 2011 All comments 3.00 July 28, 2011 All vendor revision draft 3.1 September 7, 2011 All Final version QNX v6.5 on ARM Page 5 of 40
6 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 1 Document Intention 1.1 Purpose and scope This document presents the quantitative evaluation results of the QNX Neutrino operating system V6.5 employed on an ARM based platform, more specifically on the Beagle XM board. The layout of this report follows the one depicted in The OS evaluation template [Doc. 4]. The test specifications can be found in The evaluation test report definition. [Doc. 3]. See section 1.3 of this document for more detailed references. These documents have to be seen as an integral part of this report! Due to the tightly coupling between these documents, the framework version of The evaluation test report definition. has to match the framework version of this evaluation report (which is 2.9). More information about the documents and tests versions together with their corresponding relation between both can be found in The evaluation framework, see [Doc. 1] in section 1.3 of this document. The generic test code used to perform these tests can be downloaded from our website by using the link in the related documents section. 1.2 Document issue: the 2.9 framework This document shows the test results in the scope of the evaluation framework 2.9. QNX v6.5 on ARM Page 6 of 40
7 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 1.3 Related documents These are documents that are closely related to this document. They can all be downloaded using following link: /encyc/buyersguide/rtos/evaluations Doc. 1 Doc. 2 Doc. 3 The evaluation framework This document presents the evaluation framework. It also indicates which documents are available, and how their name giving, numbering and versioning are related. This document is the base document of the evaluation framework. EVA-2.9-GEN-01 Issue: 1 Date: April 19, 2004 What is a good RTOS? This document presents the criteria that Dedicated Systems use to give an operating system the label Real-Time. The evaluation tests are based upon the criteria defined in this document. EVA-2.9-GEN-02 The evaluation test report definition. This document presents the different tests issued in this report together with the flowcharts and the generic pseudo code for each test. Test labels are all defined in this document. EVA-2.9-GEN-03 Issue: 1 April 19, 2004 Doc. 4 Doc. 5 The OS evaluation template This document presents the layout used for all reports in a certain framework. EVA-2.9-GEN-04 Issue: 1 April 19, 2004 QNX v6.5, Theoretical evaluation This document presents the qualitative discussion of the OS EVA-2.9-OS-QNX-65 Issue: 1 May 20, 2011 QNX v6.5 on ARM Page 7 of 40
8 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 2 Introduction This chapter talks about the OS that we are going to test and evaluate, and the hardware on which the OS under testing will be employed. 2.1 Overview QNX Software Systems Ltd was founded in 1980 and has been always focused on delivering solutions for the embedded systems market. One of the main differences between QNX and other RTOS is the fact that QNX is built around the POSIX API standard. This has its advantages as a lot of code for Linux based platforms can be compiled and run on QNX Neutrino. However, bear in mind that we are discussing a real-time operating system here. QNX Neutrino is based on true microkernel architecture with message-based inter-process communication. For instance, drivers are just applications with special privileges, and as such they cannot crash the kernel. The concept of kernel modules which is the case in Linux is not needed here, which makes QNX Neutrino a very stable product. Furthermore, QNX Neutrino was initially built-up as a multi-processor capable operating system (both SMP and AMP). Nowadays, this is a very important asset in today s multi- and many-core business. 2.2 Evaluated (RTOS) product Software The operating system that we are going to evaluate is the QNX NEUTRINO RTOS v6.5.0 including patch 2530, from QNX Software Systems Ltd Hardware The hardware that was used for executing our tests for the QNX Neutrino RTOS was a Beagle-XM Board Rev C with following characteristics: based on the Texas Instruments DM3730 Digital Media Processor ARM Cortex A8 running at 1GHz L1 Cache: 32KB instruction and 32KB data cache L2 Cache: 64KB 512MB RAM at 166MHz QNX v6.5 on ARM Page 8 of 40
9 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 3 Evaluation results summary Following is a summary of the results of evaluating the QNX NEUTRINO RTOS v6.5.0, from QNX Software Systems Ltd. 3.1 Positive points Excellent architecture for a robust and distributed system. Very fast and predictable performance. Large number of board support packages (BSP) and drivers (the source for most of them is available for public) which can be easily downloaded. The availability of documentation which can be considered more than the average. Efficient and user friendly Integrated Development Environment (IDE) 3.2 Negative points Not all code is available in source code. Customers can apply for source access. 3.3 Ratings For a description of the ratings, see [Doc. 3]. RTOS Architecture OS Documentation OS Configuration Internet Components Development Tools BSPs Support QNX v6.5 on ARM Page 9 of 40
10 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 4 Test Results Test Results QNX 6.5 has very good performance characteristics which guarantee the real-time behaviour. 4.1 Calibration system test (CAL) These tests are used to calibrate the tracing overhead compared with the processing power of the platform. This is important to understand the accuracy of the measurements done in scope of this report. They are used also for measuring the processing power of the platform. This calibration permits comparison with the results on other platforms Tracing overhead (CAL-P-TRC) As the Beagle board does not have any PCI support, we used the on-chip hardware timers for our measurements. This test calibrates the tracing system overhead. It is related to the hardware more than to the OS, but it is needed to correct the measured times. In the rest of the document, the tracing overhead is subtracted from the obtained results. For tracing, an internal General Purpose (GP) timer running at 13MHz was used. Reading out these timers takes some overhead of course; however, there is not any jitter at all in the overhead of the trace which in turn does not generate much extra inaccuracies. Although it is possible to let the general purpose timer run at a higher frequency, the clock that was attached to this GP timer is also distributed to other components on the chip as well. Therefore, we had to stick with the configuration that was used by the QNX BSP on this board. In general, the results in this report are correct to +/- 0.2 µseconds. Therefore the results shown in the tables are rounded to 0.1 microseconds Test results Test result Number of samples Average tracing overhead minimum tracing overhead maximum tracing overhead 384 nsec 384 nsec 384 nsec QNX v6.5 on ARM Page 10 of 40
11 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems CPU power (CAL-P-CPU) This test will calibrate the CPU performance and the memory bandwidth of the used platform. This test is measured in different situations: from the situation where code and data are cached, until the situation where neither code nor data are cached. With such different situation tests, the effects of the cache can be calculated. We have been seriously reworking this test lately. The CPU test uses only one data address. The noncached version is about 172KB in size (instructions), while the cached version uses a loop (a bit unrolled to have a small loop overhead but so it fits in the L1 I-cache and it uses only two data words). The instruction cache test is done twice Test results The results for our standard platform (Pentium MMX 200 MHz) are shown below: Test no cache cached cache effect CPU test: first load. 882 us CPU test: ICache effect 869 us us 6.4 MEM write test 400 us us 1.02 MEM read test 658 us us 1.7 Average caching effect (CPU and MEM) 3.0 On the beagle platform, the same test gives following results: Test no cache cached cache effect CPU test: first load us CPU test: ICache effect us 31.5 us 7.3 MEM write test 29.1 us 21.1 us 1.4 MEM read test 44.2 us 21.2 us 2.1 Average caching effect (CPU and MEM) 3.6 The results show similar behaviour as on the Pentium MMX 200MHz: Instruction cache has most impact on performance (you need to get each instruction from RAM, while there are always less than one memory accesses for each instruction). Remark that this test is built on purpose and thus an extreme worst case that in practice will never occur (you will never have >100KB instructions without loops in real environments). Write can be postponed, so it has less impact As read is blocking, it has more impact than the writes. QNX v6.5 on ARM Page 11 of 40
12 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. If we compare the Beagle platform with our standard evaluation platform (Pentium MMX 200MHz) then we can conclude: The memory accesses on the Beagle platform are much faster than on the Pentium reference platform by a factor of 10 to 15. When cached, the difference is even more impressing Instruction loading outside the cache is not that fast compared with the Pentium. This will of course depend on the type of code. As the x86 has variable instruction lengths, most of the time the generated assembler code on the Pentium will be compacter and thus relatively faster to load. The performance differences between both boards depends largely on the type of the test and if cached or not. In the worst case, the 1GHz ARM is only marginally faster than the Pentium MMX 200MHz (un-cached instruction loading), but in the best case the difference is about a factor of 8 (cached writes). Thus, the relative performance between both platforms will enormously depend on the test scenario! Because of the serious impact caused by not having your instructions in the cache, you should take extra safety margins in real-time behaviour (worst case is less predictable) on this platform. Remark as well that the first load of code introduces some extra delay. 4.2 Clock tests (CLK) The clock test measures the time that an operating system needs to handle its clock interrupt. On the tested platform, the clock tick interrupt is set on the highest hardware interrupt level, interrupting any other thread or interrupt handler Operating system clock setting (CLK-B-CFG) This test is done in order to examine the setting of the clock tick period in the operating system. This test shows the default clock timing as they are set by the OS. For this test, the nanosleep() POSIX function call is used. Following POSIX, the delay should be based on the clock tick. The nanosleep function always pauses for at least its specified time, but however it can take up to one clock tick more than its specified time until the process becomes run-able again. As the OS cannot know when the next tick will occur, it will add the time of one tick and round it up to the higher tick. Using nanosleep(0) thus will wake up on next tick Test results Test Test succeeded Tested clock period Clock period adaptable result Yes 1ms YES, using ClockPeriod(). QNX v6.5 on ARM Page 12 of 40
13 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Clock tick processing duration (CLK-P-DUR) This test is done for examining the clock tick processing duration in the kernel. The test results are extremely important as the clock interrupt will disturb all the other performed measurements. The bottom line of the figures in section represents the normal loop time of the test if no clock interrupt occurs during the test loop. The upper line is generated by the samples when a clock interrupt occurred during the loop. The difference between the two lines is the clock tick processing duration. In absolute values, the 2µsec clock tick impact is of course not that large on this fast platform. Knowing that this platform has less processing power compared with the Atom Z540, QNX still manages to keep its clock tick interrupt as small as with the Atom! Test results Test result CLOCK_LOOP_COUNTER 5000 Normal busy loop time 37.5 µs Busy loop time with clock interrupt 39.5 µs, worst case 46µs Clock interrupt duration 2 µs to 6.5 µs Diagrams Figure 1: RTOS clock tick duration. QNX v6.5 on ARM Page 13 of 40
14 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. Figure 2: RTOS clock tick duration, detail. 4.3 Thread tests (THR) These tests are used to measure the performance of the scheduler Thread creation behaviour (THR-B-NEW) This test will examine the behaviour of creating threads. Does the operating system behave as it should be as long as it is considered being a real-time operating system? Following scenarios are tested: If a thread is created with a lower priority than the creating thread, then are we sure that it is not activated until the creating thread is finished? If a thread is created with the same priority as the creating thread, will it be put at the ready tail? When yielding after the creation in the above test, does the newly created thread becomes active? If a thread is created with a higher priority than the creating thread, is it then immediately activated? This test succeeded without any problems. QNX v6.5 on ARM Page 14 of 40
15 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Test results Test Test succeeded Lower priority not activated? Same priority at tail? Yielding works? Higher priority activated? result YES YES YES YES YES Round robin behaviour (THR-B-RR) This test checks if the scheduler uses a fair round robin mechanism when threads are having the same priority and all of them are in the ready-to-run state (and using the SCHED_RR scheduling policy)! No problems were detected here. The round robin behaviour reschedules a thread each 4 clock ticks Test results Test Test succeeded RR Time slice following this test result Yes 4 ms Thread switch latency between same priority threads (THR-P-SLS) This test measures the time to switch between threads of the same priority. Therefore, threads have to yield the processor voluntary for the other threads to use it. In this test, we use the SCHED_FIFO policy; otherwise it would be possible that a round-robin clock event occurs between the yield and the trace, so that the thread activation is not seen in the trace. This test was performed several times, and each time using a higher number of threads in order to generate the worst case behaviour. If more threads are active, then the caching effect will be obvious in a way that the thread context will not reside anymore in the L1 cache once we have enough threads and even not in the L2 cache later on. You can see this on the diagrams, as there is much more variation and the minimal value is about a factor three larger when running 1000 threads. Further, you will clearly see the influence of clock interrupts (causing the higher values in the graphics). Once there are enough running threads, the clock interrupt will always be un-cached and thus for the 1000 thread tests, the clock interrupts always generate a delay of approximately 4µs. QNX v6.5 on ARM Page 15 of 40
16 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Test results Test Test succeeded result YES Test Sample qty Avg Max Min Thread switch latency, 2 threads µs 6.3 µs 0.6 µs Thread switch latency, 10 threads µs 3.9 µs 0.6 µs Thread switch latency, 128 threads µs 8.2 µs 0.8 µs Thread switch latency, 1000 threads µs 21.5 µs 1.1 µs Diagrams QNX v6.5 on ARM Page 16 of 40
17 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. QNX v6.5 on ARM Page 17 of 40
18 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Thread creation and deletion time (THR-P-NEW) This test examines the time for creating a thread, and the time for deleting a thread in different scenarios: Scenario 1 never run : The created thread has a lower priority than the creating thread and is deleted before it has any chance to run. No thread switch occurs in this test. Scenario 2 run and terminate : The created thread has a higher priority than the creating thread and will be activated. The created thread immediately terminates itself (thread does nothing). Scenario 3 run and block : The same as the previous scenario (scenario 2: run and terminate), but the created thread does not terminate (it lowers its priority when it is activated). In the scenarios where the thread actually runs (2, 3), the creation time is the duration from the system call creating the thread until the time when the created thread is activated. For the never run scenario, the creation time is the duration of the system call. Clearly, the performance is much better than on our reference platform (Pentium 200MHz MMX) by a factor 4 or even more. Compared with the Z540 Atom platform, the performance is about half of the Atom. At start-up, you can see sometimes a large spike due to caching. Comparing the Atom platform (which has 512KB L2 cache) with the Beagle XM platform (having only 64KB L2 cache), you can clearly see that the large cache on the Atom stabilizes the results, thus obtaining flat lines which is not the case on this ARM platform, which has some more variation caused by the cache misses. QNX v6.5 on ARM Page 18 of 40
19 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Test results Test Test succeeded result YES Test Sample qty Avg Max Min Thread creation, never run µs 53.3 µs 40.5 µs Thread deletion, never run µs 117 µs 31.5 µs Thread creation, run and terminate µs 55.9 µs 40.5 µs Thread deletion, run and terminate µs 23.0 µs 2.5 µs Thread creation, run and block µs 56.3 µs 40.2 µs Thread deletion, run and block µs µs 32.5 µs Diagrams QNX v6.5 on ARM Page 19 of 40
20 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. QNX v6.5 on ARM Page 20 of 40
21 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. QNX v6.5 on ARM Page 21 of 40
22 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. QNX v6.5 on ARM Page 22 of 40
23 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 4.4 Semaphore tests (SEM) This test examines the performance and the behaviour of the counting semaphore. The counting semaphore is a system object that can be used to synchronize threads Semaphore locking test mechanism (SEM-B-LCK) In this test, we will experiment if the counting semaphore locking mechanism works as it is expected to do. The P() call should block only when the count is zero. The V() call should increment the semaphore counter. In the case where the semaphore counter is zero, the V() call should cause a rescheduling by the OS: indeed blocked threads may become active. The semaphore behaves correctly as a protection mechanism Test results Test Test succeeded result YES Maximum semaphore value? Rescheduling on free? Limited by the int type OK Semaphore releasing mechanism (SEM-B-REL) This test verifies that the highest priority thread being blocked on a semaphore will be released by the release operation. This should be independent of the order of the acquisitions taking place. QNX passed this test Test results Test Test succeeded result YES Time needed to create and delete a semaphore (SEM-P-NEW) This test is done to get an insight about the time needed to create a semaphore and the time to delete it. The deletion time is checked in two cases: The semaphore is used between the creation and deletion. The semaphore is NOT used between the creation and deletion. QNX v6.5 on ARM Page 23 of 40
24 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. Remark that although we do not use named semaphores, there seems to be a system call required to create/delete a semaphore. At start up, there is a peak probably caused by caching. As usual, the clock tick interrupt is seen Test results Test Test succeeded result YES Test Sample qty Avg Max Min Semaphore creation time, used µs 17.5 µs 1.4 µs Semaphore deletion time, used µs 13.5 µs 1.4 µs Semaphore creation time, never used µs 26.3 µs 1.5 µs Semaphore deletion time, never used µs 14.2 µs 1.5 µs Diagrams QNX v6.5 on ARM Page 24 of 40
25 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. QNX v6.5 on ARM Page 25 of 40
26 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Test acquire-release timings: contention case (SEM-P-ARN) Here we test the acquisition and release time in the non-contention case. As in this test case the semaphore does not neither block nor cause any rescheduling (thread switch), the duration of the call should be short. The clock tick is always present Test results Test Test succeeded result YES Test Sample qty Avg Max Min Semaphore acquisition time, no contention µs 10.1 µs 1.2 µs Semaphore release time, no contention µs 10.2 µs 1.2 µs QNX v6.5 on ARM Page 26 of 40
27 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Diagrams QNX v6.5 on ARM Page 27 of 40
28 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Test acquire-release timings: contention case (SEM-P-ARC) This is performed to test the time needed to acquire and release a semaphore, depending on the number of threads blocked on the semaphore. It measures the time in the contention case when the acquisition and release system call causes a rescheduling to occur. The aim of this test is to verify whether the number of blocked threads has an impact on these timings or not. So this will answer the question: how much time the operating system needs to find out the next thread to schedule. As each thread has a different priority, the question is how these pending thread priorities on a semaphore are handled. To have a more clear view on our test, you can take a look on the expanded diagrams during a small time frame (e.g. one test loop): We create 128 threads with different priorities. The creating thread has a lower priority than the threads being created. When the thread starts execution, it tries to acquire the semaphore; but as it is taken, the thread stops and the kernel switch back to the creating thread. The time from the acquisition try (which fails) until the creating thread is activated again is called here the acquisition time. Thus, this time includes the thread switch time. Thread creation takes some time, so the time between each measurement point is large compared with most other tests. After the last thread is created and is blocked on the semaphore, the creating thread starts to release the semaphore and this the same number of times as there are blocked threads. We start timing at the moment the semaphore is released which in turn will activate the pending thread with the highest priority, which will stop the timing (thus again the thread switch time is included). Now, the most important part of this test is to see if the number of threads pending on a semaphore has an impact on release times. Clearly, it doesn t, so this is good. As usual, we find the clock tick back in these diagrams Test results Test Test succeeded Max number of threads pending result YES 128 Test Sample qty Avg Max Min Semaphore acquisition time, contented µs 62.3 µs 2.2 µs Semaphore release time, contented µs 28.5 µs 2.3 µs QNX v6.5 on ARM Page 28 of 40
29 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Diagrams Detailed extract of above QNX v6.5 on ARM Page 29 of 40
30 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. Detailed extract from above QNX v6.5 on ARM Page 30 of 40
31 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 4.5 Mutex tests (MUT) Here we are going to test the performance and behaviour of the mutual exclusive semaphore. Although the mutual exclusive semaphore (further called mutex) is mostly explained as being the same as a counting semaphore where the count is one, this is not true. A mutex has a totally different behaviour than semaphores. Mutexes have the concept of lock owner, and thus they can be used for preventing priority inversions. This is something that cannot be done by semaphores. Therefore it is a bad idea to use semaphores as a critical section protection mechanism. In scope of the framework, this test will look into detail of a mutex system object that avoids priority inversion Priority inversion avoidance mechanism (MUT-B-ARC) This test will determine if the system call under testing prevents the priority inversion case. Therefore the test will artificially create a priority inversion. Priority inversion is prevented as expected Test results Test Priority inversion avoidance system call present System call used Test succeeded Priority inversion avoided Mechanism used if any? result Yes pthread_mutex_lock YES YES pthread_mutexattr_setprotocol: PTHREAD_PRIO_INHERIT Mutex acquire-release timings: contention case (MUT-P-ARC) This is the same test as above, but performed in a loop. In this case, the time is measured to acquire and release the mutex in the priority inversion case. Remark that the acquisition enforces a thread switch. The acquiring thread is blocked and the one having the lock is released. The time is measured from the request for the mutex acquisition to the lower priority thread having the lock being activated. Before the release, an intermediate priority level thread is activated (between the low priority one having the lock and the high priority one asking the lock). Due to the priority inheritance, this thread does not start to run (the low priority thread having the lock inherited the high priority of the thread asking the lock). The release time is measured from the release call until the thread requesting the mutex is activated, so it also includes a thread switch. As usual, the clock ticks can be clearly seen. QNX v6.5 on ARM Page 31 of 40
32 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Test results Test Test succeeded result Yes Test Sample qty Avg Max Min Mutex acquisition time, contention µs 7.2 µs 2.1 µs Mutex release time, contention µs 13.5 µs 3.2 µs Diagrams: QNX v6.5 on ARM Page 32 of 40
33 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Mutex acquire-release timings: no-contention case (MUT-P-ARN) This test measures the overhead of using a lock when it is not locked by another thread. Good designed software will use non-contended locks most of the time and only in some rare cases the lock will be taken by another thread. Therefore, it is important that the non-contention case should be fast. Remark that this is possible only if the CPU supports some type of atomic instruction, so that no system call is needed when no contention is detected. Clearly, this is the case for QNX; probably no system call is issued. Anyhow, the time it requires starts to be too small to measure. As in all diagrams, the clock tick shows up again Test results Test Test succeeded result Yes Test Sample qty Avg Max Min Semaphore acquisition time, no contention µs 3.6 µs 0.2 µs Semaphore release time, no contention µs 3.2 µs 0.2 µs QNX v6.5 on ARM Page 33 of 40
34 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Diagrams: QNX v6.5 on ARM Page 34 of 40
35 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 4.6 Interrupt tests (IRQ) The performance of the interrupt handling in the operating system and hardware is tested here. In a real-time system, interrupt handling is a major part of the system. Indeed, such systems are typically event driven. For these tests, interrupts are generated by another General Purpose Timer in the chip (we use already one for tracing purposes). This timer has an independent programmable wrap around timer, so it is not influenced by the RTOS clock. As such, we can guarantee that an independent interrupt source is not synchronised in any way with the platform under test Interrupt latency (IRQ_P_LAT) This test measures the time it takes to switch from a running thread to an interrupt handler. The time is measured from the moment the running thread is interrupted which means that it does not measure the hardware interrupt latency. The results are very good Test results Test Sample qty Avg Max Min Interrupt dispatch latency µs 2.6 µs 0.5 µs Diagrams QNX v6.5 on ARM Page 35 of 40
36 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Interrupt dispatch latency (IRQ_P_DLT) This test measures the time it takes to switch from the interrupt handler back to the interrupted thread. These results are very good and even better than the (faster) Atom platform; in this case, the measurements can be compared. Thus, although the ARM platform processing power is about half the processing power of the Atom platform, in this scenario it is almost twice faster! Test results Test Sample qty Avg Max Min Dispatch latency from interrupt handler µs 2.6 µs 0.5 µs Diagrams Interrupt to thread latency (IRQ_P_TLT) Test results This test measures the time it takes to switch from the interrupt handler to the thread that is activated from the interrupt handler. This test is done by allowing the interrupt handler to emit an event which releases a blocked thread. This blocking thread has the highest priority in the system. There is also a low priority thread looping. So the measurement takes the time from the interrupt handler to the blocked thread (as a consequence this includes a thread switch). QNX v6.5 on ARM Page 36 of 40
37 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Test results Test Sample qty Avg Max Min Latency from ISR to waken-up thread µs 6.0 µs 0.9 µs Diagrams Maximum sustained interrupt frequency (IRQ_S_SUS) This test measures the probability that an interrupt is missed. Is the interrupt handling duration stable and predictable? The test is done on three levels: 1000 interrupts, initial phase: a fast test just to see where we have to start searching interrupts, second phase based on the results from the first phase. This test still takes less than a minute and gives already accurate results interrupts, takes more than 24 hours: to verify stability, therefore we cannot run a lot of tests, especially when it comes to large interrupt latencies. As is a bit expected knowing the serious difference between cached and un-cached performance, the difference between the best and worst case is significant. At the end, the worst case is about similar like a Pentium MMX 200MHz! QNX v6.5 on ARM Page 37 of 40
38 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems Test results Interrupt period #interrupts generated #interrupts serviced #interrupts lost 9 us us us us us us us us us Memory tests This test examines the memory leaks of OS Memory leak test (MEM_B_LEK) OS objects are often in a separate pool of memory. Detecting leaks by variously mixing calls to the system APIs will determine if there are some problems that may occur only after long runs. This test continuously create/remove objects in the operating system (threads, semaphores, mutexes ). Test Test succeeded result YES Test duration (how long we let the endless loop run) >10h Number of main test loops done > QNX v6.5 on ARM Page 38 of 40
39 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 5 Appendix A: Vendor comments All vendor comments were integrated within the document as there were no disagreements. QNX v6.5 on ARM Page 39 of 40
40 Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Dedicated Systems. 6 Appendix B: Acronyms Acronym API BSP DSP FIFO GPOS GUI IDE Explanation Application Programmers Interface: calls used to call code from a library or system. Board Support Package: all code and device drivers to get the OS running on a certain board Digital Signal Processor First In First Out: a queuing rule General Purpose Operating System Graphical User Interface Integrated Development Environment (GUI tool used to develop and debug applications) IRQ ISR MMU OS PCI PIC PMC PrPMC RTOS SDK SoC Interrupt Request Interrupt Servicing Routine Memory Management Unit Operating System Peripheral Component Interconnect: bus to connect devices, used in all PCs! Programmable Interrupt Controller PCI Mezzanine Card Processor PMC: a PMC with the processor Real-Time Operating System Software Development Kit System on a Chip QNX v6.5 on ARM Page 40 of 40
WINDOWS CE 5.0 ON AN X86 PLATFORM
Doc. No: EVA-2.9-TST-CE-x86-01 WINDOWS CE 5.0 ON AN X86 PLATFORM Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any form
COMPARISON BETWEEN QNX RTOS V6.2 AND RED HAT EMBEDDED LINUX (ELDS) V1.1
COMPARISON BETWEEN QNX RTOS V6.2 AND RED HAT EMBEDDED LINUX Copyright Dedicated Systems. All rights reserved, no part of the contents of this document may be reproduced or (ELDS) V1.1 Copyright Dedicated
White Paper. Real-time Capabilities for Linux SGI REACT Real-Time for Linux
White Paper Real-time Capabilities for Linux SGI REACT Real-Time for Linux Abstract This white paper describes the real-time capabilities provided by SGI REACT Real-Time for Linux. software. REACT enables
SYSTEM ecos Embedded Configurable Operating System
BELONGS TO THE CYGNUS SOLUTIONS founded about 1989 initiative connected with an idea of free software ( commercial support for the free software ). Recently merged with RedHat. CYGNUS was also the original
Performance Comparison of RTOS
Performance Comparison of RTOS Shahmil Merchant, Kalpen Dedhia Dept Of Computer Science. Columbia University Abstract: Embedded systems are becoming an integral part of commercial products today. Mobile
Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur
Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No. # 26 Real - Time POSIX. (Contd.) Ok Good morning, so let us get
By the Citrix Publications Department. Citrix Systems, Inc.
Licensing: Planning Your Deployment By the Citrix Publications Department Citrix Systems, Inc. Notice The information in this publication is subject to change without notice. THIS PUBLICATION IS PROVIDED
Measuring Cache and Memory Latency and CPU to Memory Bandwidth
White Paper Joshua Ruggiero Computer Systems Engineer Intel Corporation Measuring Cache and Memory Latency and CPU to Memory Bandwidth For use with Intel Architecture December 2008 1 321074 Executive Summary
COMPARISON BETWEEN QNX RTOS V6.1, VXWORKS AE 1.1 AND WINDOWS CE.NET
COMPARISON BETWEEN QNX RTOS V6.1, VXWORKS AE 1.1 AND WINDOWS CE.NET Copyright Dedicated Systems NV. All rights reserved, no part of the contents of this document may be reproduced or transmitted in any
Quest vworkspace Virtual Desktop Extensions for Linux
Quest vworkspace Virtual Desktop Extensions for Linux What s New Version 7.6 2012 Quest Software, Inc. ALL RIGHTS RESERVED. Patents Pending. This guide contains proprietary information protected by copyright.
AVR151: Setup and Use of the SPI. Introduction. Features. Atmel AVR 8-bit Microcontroller APPLICATION NOTE
Atmel AVR 8-bit Microcontroller AVR151: Setup and Use of the SPI APPLICATION NOTE Introduction This application note describes how to set up and use the on-chip Serial Peripheral Interface (SPI) of the
Real-time KVM from the ground up
Real-time KVM from the ground up KVM Forum 2015 Rik van Riel Red Hat Real-time KVM What is real time? Hardware pitfalls Realtime preempt Linux kernel patch set KVM & qemu pitfalls KVM configuration Scheduling
Dell Statistica. Statistica Document Management System (SDMS) Requirements
Dell Statistica Statistica Document Management System (SDMS) Requirements 2014 Dell Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described
POSIX. RTOSes Part I. POSIX Versions. POSIX Versions (2)
RTOSes Part I Christopher Kenna September 24, 2010 POSIX Portable Operating System for UnIX Application portability at source-code level POSIX Family formally known as IEEE 1003 Originally 17 separate
pco.interface GigE & USB Installation Guide
pco.interface GigE & USB Installation Guide In this manual you find installation instructions for the GigE Vision and USB2.0 interface on Microsoft Windows platforms. Target Audience: This camera is designed
Real-Time Operating Systems. http://soc.eurecom.fr/os/
Institut Mines-Telecom Ludovic Apvrille [email protected] Eurecom, office 470 http://soc.eurecom.fr/os/ Outline 2/66 Fall 2014 Institut Mines-Telecom Definitions What is an Embedded
Fastboot Techniques for x86 Architectures. Marcus Bortel Field Application Engineer QNX Software Systems
Fastboot Techniques for x86 Architectures Marcus Bortel Field Application Engineer QNX Software Systems Agenda Introduction BIOS and BIOS boot time Fastboot versus BIOS? Fastboot time Customizing the boot
AN11008 Flash based non-volatile storage
Rev. 1 5 January 2011 Application note Document information Info Content Keywords Flash, EEPROM, Non-Volatile Storage Abstract This application note describes the implementation and use of a library that
Website TERMS OF USE AND CONDITIONS
Website TERMS OF USE AND CONDITIONS Welcome to the Adult & Pediatric Dermatology, p.c. ( APDerm ) website. These Terms of Use and Conditions ( Terms ) govern your use of the APDerm ( our ) website ( Site
How to Run the MQX RTOS on Various RAM Memories for i.mx 6SoloX
Freescale Semiconductor, Inc. Document Number: AN5127 Application Note Rev. 1, 05/2015 How to Run the MQX RTOS on Various RAM Memories for i.mx 6SoloX 1 Introduction This document describes how to customize
Microsoft Dynamics GP. Bill of Materials
Microsoft Dynamics GP Bill of Materials Copyright Copyright 2007 Microsoft Corporation. All rights reserved. Complying with all applicable copyright laws is the responsibility of the user. Without limiting
Upgrading Intel AMT 5.0 drivers to Linux kernel v2.6.31
White Paper Zerene Sangma Platform Application Engineer Intel Corporation Upgrading Intel AMT 5.0 drivers to Linux kernel v2.6.31 For Intel Q45 and Intel GM45 based embedded platforms June 2010 323961
Quest SQL Optimizer 6.5. for SQL Server. Installation Guide
Quest SQL Optimizer for SQL Server 6.5 2008 Quest Software, Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this guide is furnished
Linux Process Scheduling Policy
Lecture Overview Introduction to Linux process scheduling Policy versus algorithm Linux overall process scheduling objectives Timesharing Dynamic priority Favor I/O-bound process Linux scheduling algorithm
Steps to Migrating to a Private Cloud
Deploying and Managing Private Clouds The Essentials Series Steps to Migrating to a Private Cloud sponsored by Introduction to Realtime Publishers by Don Jones, Series Editor For several years now, Realtime
Terms and Conditions
Terms and Conditions Agreement between user and internetsecurityservices.org Welcome to internetsecurityservices.org. The internetsecurityservices.org website (the "Site") is comprised of various web pages
Real Time Programming: Concepts
Real Time Programming: Concepts Radek Pelánek Plan at first we will study basic concepts related to real time programming then we will have a look at specific programming languages and study how they realize
Atmel AVR4920: ASF - USB Device Stack - Compliance and Performance Figures. Atmel Microcontrollers. Application Note. Features.
Atmel AVR4920: ASF - USB Device Stack - Compliance and Performance Figures Features Compliance to USB 2.0 - Chapters 8 and 9 - Classes: HID, MSC, CDC, PHDC Interoperability: OS, classes, self- and bus-powered
Identikey Server Performance and Deployment Guide 3.1
Identikey Server Performance and Deployment Guide 3.1 Disclaimer of Warranties and Limitations of Liabilities Disclaimer of Warranties and Limitations of Liabilities The Product is provided on an 'as is'
APPLICATION NOTE. AT07175: SAM-BA Bootloader for SAM D21. Atmel SAM D21. Introduction. Features
APPLICATION NOTE AT07175: SAM-BA Bootloader for SAM D21 Atmel SAM D21 Introduction Atmel SAM Boot Assistant (Atmel SAM-BA ) allows In-System Programming (ISP) from USB or UART host without any external
BACKUPPRO TERMS OF USE AND END USER LICENSE AGREEMENT
BACKUPPRO TERMS OF USE AND END USER LICENSE AGREEMENT This is a legal agreement between you and BackupPro, a business located in Australia and having its registered office at 795 Botany Road, Rosebery
Tasks Schedule Analysis in RTAI/Linux-GPL
Tasks Schedule Analysis in RTAI/Linux-GPL Claudio Aciti and Nelson Acosta INTIA - Depto de Computación y Sistemas - Facultad de Ciencias Exactas Universidad Nacional del Centro de la Provincia de Buenos
Outline. Introduction. Multiprocessor Systems on Chip. A MPSoC Example: Nexperia DVP. A New Paradigm: Network on Chip
Outline Modeling, simulation and optimization of Multi-Processor SoCs (MPSoCs) Università of Verona Dipartimento di Informatica MPSoCs: Multi-Processor Systems on Chip A simulation platform for a MPSoC
MiSync Personal for Beams
Using MiSync Personal for Beams V4.3.1.0 by Metisc Copyright Printed: 16 January 2015 2014 by Metisc. All rights reserved. Notice This user guide and the software it describes are furbished under a license
Digi International: Digi One IA RealPort Latency Performance Testing
August 2002 1001 Aviation Parkway, Suite 400 Morrisville, NC 27560 919-380-2800 Fax 919-380-2899 320 B Lakeside Drive Foster City, CA 94404 650-513-8000 Fax 650-513-8099 www.etestinglabs.com [email protected]
APPLICATION NOTE. Atmel AVR134: Real Time Clock (RTC) Using the Asynchronous Timer. Atmel AVR 8-bit Microcontroller. Introduction.
APPLICATION NOTE Atmel AVR134: Real Time Clock (RTC) Using the Asynchronous Timer Introduction Atmel AVR 8-bit Microcontroller This application note describes how to implement a real time counter (RTC)
Design and Implementation of the Heterogeneous Multikernel Operating System
223 Design and Implementation of the Heterogeneous Multikernel Operating System Yauhen KLIMIANKOU Department of Computer Systems and Networks, Belarusian State University of Informatics and Radioelectronics,
ChangeAuditor 5.6. For Windows File Servers Event Reference Guide
ChangeAuditor 5.6 For Windows File Servers Event Reference Guide 2011 Quest Software, Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described
Copy Tool For Dynamics CRM 2013
Copy Tool For Dynamics CRM 2013 Page 1 of 15 Copy Tool 2013 Copyright Warranty disclaimer Limitation of liability License agreement Copyright 2013 Dynamics Professional Solutions. All rights reserved.
BlackBerry Web Desktop Manager. Version: 5.0 Service Pack: 4. User Guide
BlackBerry Web Desktop Manager Version: 5.0 Service Pack: 4 User Guide Published: 2012-10-03 SWD-20121003174218242 Contents 1 Basics... 5 Log in to the BlackBerry Web Desktop Manager... 5 Connect your
DEP Documentation DEP Customer's Host Programmers Guidelines
Haachtsesteenweg 1442 1130 Brussels Belgium DEP Documentation DEP Customer's Host Programmers Guidelines Version: 04.01 Atos Worldline - Technology & Products / Engineering / DEP Page: 2/10 Version Management
Chapter 1 Computer System Overview
Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Eighth Edition By William Stallings Operating System Exploits the hardware resources of one or more processors Provides
Embedded Systems. 6. Real-Time Operating Systems
Embedded Systems 6. Real-Time Operating Systems Lothar Thiele 6-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic
Software License Agreement
Software License Agreement GRANT OF LICENSE This Accusoft Corporation ("ACCUSOFT") Agreement ("LICENSE") grants YOU ("LICENSEE") a non-exclusive and non-transferable right to use the trial mode version
Operating Systems 4 th Class
Operating Systems 4 th Class Lecture 1 Operating Systems Operating systems are essential part of any computer system. Therefore, a course in operating systems is an essential part of any computer science
Ready Time Observations
VMWARE PERFORMANCE STUDY VMware ESX Server 3 Ready Time Observations VMware ESX Server is a thin software layer designed to multiplex hardware resources efficiently among virtual machines running unmodified
QLIKVIEW SERVER MEMORY MANAGEMENT AND CPU UTILIZATION
QLIKVIEW SERVER MEMORY MANAGEMENT AND CPU UTILIZATION QlikView Scalability Center Technical Brief Series September 2012 qlikview.com Introduction This technical brief provides a discussion at a fundamental
Exception and Interrupt Handling in ARM
Exception and Interrupt Handling in ARM Architectures and Design Methods for Embedded Systems Summer Semester 2006 Author: Ahmed Fathy Mohammed Abdelrazek Advisor: Dominik Lücke Abstract We discuss exceptions
ChangeAuditor 6.0 For Windows File Servers. Event Reference Guide
ChangeAuditor 6.0 For Windows File Servers Event Reference Guide 2013 Quest Software, Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described
Administration Guide. Wireless software upgrades
Administration Guide Wireless software upgrades SWDT207654-207654-0727045705-001 Contents Upgrading the BlackBerry Device Software over the wireless network... 3 Wireless software upgrades... 3 Sources
Intel Device View. User Guide
Intel Device View User Guide Year 2000 Capable An Intel product, when used in accordance with its associated documentation, is Year 2000 Capable when, upon installation, it accurately stores, displays,
2015 Qualcomm Technologies, Inc. All rights reserved.
Qualcomm Technologies, Inc Qualcomm Snapdragon 600 Processor APQ8064 MultiMediaCard/Secure Digital Card Application Note LM80-P0598-7 Rev A June 2015 2015 Qualcomm Technologies, Inc All rights reserved
IT@Intel. Memory Sizing for Server Virtualization. White Paper Intel Information Technology Computer Manufacturing Server Virtualization
White Paper Intel Information Technology Computer Manufacturing Server Virtualization Memory Sizing for Server Virtualization Intel IT has standardized on 16 gigabytes (GB) of memory for dual-socket virtualization
Microsoft Dynamics GP. Electronic Signatures
Microsoft Dynamics GP Electronic Signatures Copyright Copyright 2006 Microsoft Corporation. All rights reserved. Complying with all applicable copyright laws is the responsibility of the user. Without
DATA MASKING A WHITE PAPER BY K2VIEW. ABSTRACT K2VIEW DATA MASKING
DATA MASKING A WHITE PAPER BY K2VIEW. ABSTRACT In today s world, data breaches are continually making the headlines. Sony Pictures, JP Morgan Chase, ebay, Target, Home Depot just to name a few have all
END USER LICENSE AGREEMENT
END USER LICENSE AGREEMENT 1. SCOPE OF THIS AGREEMENT. This END USER LICENSE AGREEMENT ("EULA") is a legal agreement between you (either an individual or a single entity) and TradeStation ("TS") governing
HP WBEM Services Software Developer's Kit Version A.02.11.00 Release Notes. HP-UX 11i v3
HP WBEM Services Software Developer's Kit Version A.02.11.00 Release Notes HP Part Number: 5900-2555 Published: March 2013 Copyright 2012, 2013 Hewlett-Packard Development Company, L.P. Legal Notices The
6. MODIFICATIONS. Licensee may modify, adapt and create improvements to the SOFTWARE subject to the following conditions:
ACADIA UNIVERSITY Software License Agreement This Software License Agreement ("Agreement") is made and entered into this _ of 20, (the "Effective Date") by and between The Governors of Acadia University
Comtrol Corporation: Latency Performance Testing of Network Device Servers
April 2003 1001 Aviation Parkway, Suite 400 Morrisville, NC 27560 919-380-2800 Fax 919-380-2899 320 B Lakeside Drive Foster City, CA 94404 650-513-8000 Fax 650-513-8099 www.veritest.com [email protected]
Notes and terms of conditions. Vendor shall note the following terms and conditions/ information before they submit their quote.
Specifications for ARINC 653 compliant RTOS & Development Environment Notes and terms of conditions Vendor shall note the following terms and conditions/ information before they submit their quote. 1.
An Implementation Of Multiprocessor Linux
An Implementation Of Multiprocessor Linux This document describes the implementation of a simple SMP Linux kernel extension and how to use this to develop SMP Linux kernels for architectures other than
formerly Help Desk Authority 9.1.3 Upgrade Guide
formerly Help Desk Authority 9.1.3 Upgrade Guide 2 Contacting Quest Software Email: Mail: Web site: [email protected] Quest Software, Inc. World Headquarters 5 Polaris Way Aliso Viejo, CA 92656 USA www.quest.com
Dell Migration Manager for Exchange 8.11. Product Overview
Dell Migration Manager for Exchange 8.11 2014 Dell Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this guide is furnished under
EMC Business Continuity for Microsoft SQL Server Enabled by SQL DB Mirroring Celerra Unified Storage Platforms Using iscsi
EMC Business Continuity for Microsoft SQL Server Enabled by SQL DB Mirroring Applied Technology Abstract Microsoft SQL Server includes a powerful capability to protect active databases by using either
Bachmann PrintBoy SDK HTML Edition API Reference for CodeWarrior C/C++ Developers version 7.0
Bachmann PrintBoy SDK HTML Edition API Reference for CodeWarrior C/C++ Developers version 7.0 Essential Printing and File Management Software for Palm OS and Pocket PC Handhelds Bachmann PrintBoy SDK copyright
Self Help Guides. Create a New User in a Domain
Self Help Guides Create a New User in a Domain Creating Users & Groups This document is to be used as a guide to creating users and/or groups in a Domain Server environment; 1. Windows Server Domain exists,
VERITAS Software - Storage Foundation for Windows Dynamic Multi-Pathing Performance Testing
January 2003 www.veritest.com [email protected] VERITAS Software - Storage Foundation for Windows Dynamic Multi-Pathing Performance Testing Test report prepared under contract from VERITAS Software Corporation
Hard Real-Time Linux
Hard Real-Time Linux (or: How to Get RT Performances Using Linux) Andrea Bastoni University of Rome Tor Vergata System Programming Research Group [email protected] Linux Kernel Hacking Free Course
IT@Intel. Comparing Multi-Core Processors for Server Virtualization
White Paper Intel Information Technology Computer Manufacturing Server Virtualization Comparing Multi-Core Processors for Server Virtualization Intel IT tested servers based on select Intel multi-core
Self Help Guides. Setup Exchange Email with Outlook
Self Help Guides Setup Exchange Email with Outlook Setting up Exchange Email Connection This document is to be used as a guide to setting up an Exchange Email connection with Outlook; 1. Microsoft Outlook
Quality of Service su Linux: Passato Presente e Futuro
Quality of Service su Linux: Passato Presente e Futuro Luca Abeni [email protected] Università di Trento Quality of Service su Linux:Passato Presente e Futuro p. 1 Quality of Service Time Sensitive applications
Installing OpenOffice.org on a USB key
Installing OpenOffice.org on a USB key Installing OpenOffice.org on a USB key [0.3] First edition: [05/29/04] First English edition: [06/02/04] Contents Contents Contents....1 Overview......2 Copyright
USER GUIDE EDBG. Description
USER GUIDE EDBG Description The Atmel Embedded Debugger (EDBG) is an onboard debugger for integration into development kits with Atmel MCUs. In addition to programming and debugging support through Atmel
ES_LPC4357/53/37/33. Errata sheet LPC4357/53/37/33. Document information
Rev. 1.1 8 August 2012 Errata sheet Document information Info Keywords Abstract Content LPC4357FET256; LPC4357FET180; LPC4357FBD208; LPC4353FET256; LPC4353FET180; LPC4353FBD208; LPC4337FET256; LPC4337FET180;
Application Note Gemalto.NET 2.0 Smart Card Certificate Enrollment using Microsoft Certificate Services on Windows 2008
7 Application Note Gemalto.NET 2.0 Smart Card Certificate Enrollment using Microsoft Certificate Services on Windows 2008 All information herein is either public information or is the property of and owned
Dell One Identity Manager 7.0. Help Desk Module Administration Guide
Dell 2015 Dell Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this guide is furnished under a software license or nondisclosure
Performance Tuning Guide for ECM 2.0
Performance Tuning Guide for ECM 2.0 Rev: 20 December 2012 Sitecore ECM 2.0 Performance Tuning Guide for ECM 2.0 A developer's guide to optimizing the performance of Sitecore ECM The information contained
MQX Lite Real-Time Operating System User Guide
MQX Lite Real-Time Operating System User Guide Document Number: MQXLITEUG Rev 1.1, 02/2014 2 Freescale Semiconductor, Inc. Contents Section number Title Page Chapter 1 Introduction 1.1 Overview of MQX
Achieving Nanosecond Latency Between Applications with IPC Shared Memory Messaging
Achieving Nanosecond Latency Between Applications with IPC Shared Memory Messaging In some markets and scenarios where competitive advantage is all about speed, speed is measured in micro- and even nano-seconds.
AN10950. LPC24XX external memory bus example. Document information
Rev. 1.1 9 November 2012 Application note Document information Info Content Keywords LPC24XX, EMC, memory, SDRAM, SRAM, flash Abstract This application note will detail an example design illustrating how
Advanced Planning PDP Client for Microsoft Excel 1.3 Install PeopleBook
Advanced Planning PDP Client for Microsoft Excel 1.3 Install PeopleBook January 2004 PeopleSoft Advanced Planning PDP Client for Microsoft Excel 1.3 Installation PeopleBook SKU APSPDPCLP0312 Contributors:
Introduction to PCI Express Positioning Information
Introduction to PCI Express Positioning Information Main PCI Express is the latest development in PCI to support adapters and devices. The technology is aimed at multiple market segments, meaning that
Chapter 13. PIC Family Microcontroller
Chapter 13 PIC Family Microcontroller Lesson 01 PIC Characteristics and Examples PIC microcontroller characteristics Power-on reset Brown out reset Simplified instruction set High speed execution Up to
RTOS Debugger for ecos
RTOS Debugger for ecos TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debugger... RTOS Debugger for ecos... 1 Overview... 2 Brief Overview of Documents for New Users... 3
10 STEPS TO YOUR FIRST QNX PROGRAM. QUICKSTART GUIDE Second Edition
10 STEPS TO YOUR FIRST QNX PROGRAM QUICKSTART GUIDE Second Edition QNX QUICKSTART GUIDE A guide to help you install and configure the QNX Momentics tools and the QNX Neutrino operating system, so you can
An Introduction to the ARM 7 Architecture
An Introduction to the ARM 7 Architecture Trevor Martin CEng, MIEE Technical Director This article gives an overview of the ARM 7 architecture and a description of its major features for a developer new
NCD ThinPATH Load Balancing Startup Guide
NCD ThinPATH Load Balancing Startup Guide Copyright Copyright 1999 by Network Computing Devices, Inc. (NCD).The information contained in this document is subject to change without notice. Network Computing
Intel Media SDK Features in Microsoft Windows 7* Multi- Monitor Configurations on 2 nd Generation Intel Core Processor-Based Platforms
Intel Media SDK Features in Microsoft Windows 7* Multi- Monitor Configurations on 2 nd Generation Intel Core Processor-Based Platforms Technical Advisory December 2010 Version 1.0 Document Number: 29437
Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance.
Agenda Enterprise Performance Factors Overall Enterprise Performance Factors Best Practice for generic Enterprise Best Practice for 3-tiers Enterprise Hardware Load Balancer Basic Unix Tuning Performance
ACD Setup & Operation
SCS 4.0 ACD Setup & Operation Task Based Guide Copyright 2010 Avaya Inc. All Rights Reserved. Notices While reasonable efforts have been made to ensure that the information in this document is complete
Service Agreement: January 2008
International Consultants in Medicine Service Agreement: January 2008 Prior to enrolling in the service as a Member of any degree, you must agree to the following terms and conditions. You may accept these
Dell Spotlight on Active Directory 6.8.3. Server Health Wizard Configuration Guide
Dell Spotlight on Active Directory 6.8.3 Server Health Wizard Configuration Guide 2013 Dell Software Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software
Long-term monitoring of apparent latency in PREEMPT RT Linux real-time systems
Long-term monitoring of apparent latency in PREEMPT RT Linux real-time systems Carsten Emde Open Source Automation Development Lab (OSADL) eg Aichhalder Str. 39, 78713 Schramberg, Germany [email protected]
Enhanced Diagnostics Improve Performance, Configurability, and Usability
Application Note Enhanced Diagnostics Improve Performance, Configurability, and Usability Improved Capabilities Available for Dialogic System Release Software Application Note Enhanced Diagnostics Improve
Designing Feature-Rich User Interfaces for Home and Industrial Controllers
Designing Feature-Rich User Interfaces for Home and Industrial Controllers Author: Frédéric Gaillard, Product Marketing Manager, Atmel We have all become familiar with intuitive user interfaces on our
WORKFLOW INTEGRATOR INSTALLATION GUIDE
WORKFLOW INTEGRATOR INSTALLATION GUIDE Introduction Welcome to Parity Software s Workflow Integrator! Workflow Integrator addresses the business demand for easy to use SharePoint integration as well the
