Science topic

Operating Systems - Science topic

Explore the latest questions and answers in Operating Systems, and find Operating Systems experts.
Questions related to Operating Systems
  • asked a question related to Operating Systems
Question
3 answers
NIST's new cybersecurity profile is designed to help mitigate risks to systems that use positioning, navigation and timing (PNT) data, including systems that underpin modern finance, transportation, energy and other critical infrastructure. While its scope does not include ground- or space-based PNT source signal generators and providers (such as satellites), the profile still covers a wide swath of technologies.
Source:
Safeguarding Critical Infrastructure: NIST Releases Draft Cybersecurity Guidance, Develops GPS-Free Backup for Timing Systems | NIST
Assessing Cyber Threats To Canadian Infrastructure - Canada.ca
Relevant answer
Answer
Firewalls
Antivirus Software.
PKI Services.
Managed Detection and Response Service (MDR)
Penetration Testing.
Staff Training.
  • asked a question related to Operating Systems
Question
12 answers
Right now, in 2022, we can read with perfect understanding mathematical articles and books
written a century ago. It is indeed remarkable how the way we do mathematics has stabilised.
The difference between the mathematics of 1922 and 2022 is small compared to that between the mathematics of 1922 and 1822.
Looking beyond classical ZFC-based mathematics, a tremendous amount of effort has been put
into formalising all areas of mathematics within the framework of program-language implementations (for instance Coq, Agda) of the univalent extension of dependent type theory (homotopy type theory).
But Coq and Agda are complex programs which depend on other programs (OCaml and Haskell) and frameworks (for instance operating systems and C libraries) to function. In the future if we have new CPU architectures then
Coq and Agda would have to be compiled again. OCaml and Haskell would have to be compiled again.
Both software and operating systems are rapidly changing and have always been so. What is here today is deprecated tomorrow.
My question is: what guarantee do we have that the huge libraries of the current formal mathematics projects in Agda, Coq or other languages will still be relevant or even "runnable" (for instance type-checkable) without having to resort to emulators and computer archaeology 10, 20, 50 or 100 years from now ?
10 years from now will Agda be backwards compatible enough to still recognise
current Agda files ?
Have there been any organised efforts to guarantee permanent backward compatibility for all future versions of Agda and Coq ? Or OCaml and Haskell ?
Perhaps the formal mathematics project should be carried out within a meta-programing language, a simpler more abstract framework (with a uniform syntax) comprehensible at once to logicians, mathematicians and programers and which can be converted automatically into the latest version of Agda or Coq ?
Relevant answer
Answer
The engineering philosophy behind Coq and the Coq kernel is well worth careful consideration:
  • asked a question related to Operating Systems
Question
36 answers
Mac OS vs Linux vs Windows??
I personally use MacOS but would like to know what other people use for their research work, preferably researchers associated with Computation work. If possible do let me know the reason. This is just a survey.
Relevant answer
Answer
MS Windows OS
  • asked a question related to Operating Systems
Question
64 answers
Any new innovations other than First-Come, First-Served (FCFS) / Shortest-Job-First (SJF)/ Round Robin (RR) or mix-development of those?
Relevant answer
Answer
Modern OS CPU Scheduling Iaka Dispatching or Thread Switching) can be all of the ones mentioned but some of the ones used in large mainframes successfully are workload related. OS2200 from Unisys (Formrerly Sperry Univac) used a n I/O load preferential method that would favour a User thread that initiated an I/O operation prior to the expiration of its previous CPU Quantum value. This tended to favour those user applications that were not CPU Dominant. Later in our development of the Operating System where NUMA architectures with large numbers of Cores, clustered on a NUMA Node sharing memory, we found there was an advantage to keep threads working on similar memory data sets together that used IP acceleration caches to avoid repeated trips to the memory module to fetch data for operations by the instruction processor. Mapping Instruction processors (Cores) by their respective NUMA Chip allows minimizing data collisions and refresh cycle losses. The Affinity manager in the Dispatcher Kernel code manages the position of the threads relative to their respective cores and nodes. Some Patents were issued on this architecture change that resulted in significant price/performance improvements for the systems in general
  • asked a question related to Operating Systems
Question
4 answers
I have taught a subject called 'Operating Systems' for the first semester students in two batches. (in 2019 and 2021). In 2019, it is physical and in 2021, it is totally online. I have used some new approaches to make the online class interesting. I have the final grades of students in both batches. Can I write a paper by comparing the results of these two batches? I don't have a big idea on how to compare them? I feel like I can compare the results based on physical setting and online setting. Since the batches are different, can I do a comparison like that? I would like to hear from you.
Relevant answer
Answer
Hello, again, Uthpala Athukorala
My additional point when I was thinking about this problem more is that I would (if possible) us another measurement outcome and not only examination scores.
  • asked a question related to Operating Systems
Question
73 answers
What are the User goals and system goals of a specific operating system for a Small Garden plant maintenance computer system which consists of automated devices, IoTs, Wi-Fi and cloud database ?
Disclaimer
The discussion targets the perspectives of two types of participants.
  • Software Engineering Student: please analyse the situation with your knowledge and answer.
  • Software Engineering professional / scientists: please use your experience and insert answers as advice.
It is warmly welcome the ideas of both the groups as well as interest audience
Relevant answer
Answer
User goals
· User can keep in touch with the garden works.
· Monitor the fertilizers and chemical levels.
· Keep in touch with the safety and the good health of plants.
· To keep track on the Harvest.
System Goals
· Can measure Humidity of soil.
· Measuring the temperature of the garden.
· Update and report in real-time to the cloud server.
  • asked a question related to Operating Systems
Question
83 answers
User mode and Kernel-mode are two processing statuses of the operating system. Please suggest to me, a very simple example in which you can explain the differences and other functionality such as system calls, interrupt to a novice learner.
Further, just inform how to map the example with subject
Disclaimer
The discussion targets the perspectives of two types of participants.
  • Operating System subject's Student: please analyse the functionalities and construct an answer.
  • Computing professionals/teachers: please use your experience and insert answers as advice.
It is warmly welcome the ideas of both the groups as well as interest audience
Relevant answer
Answer
For an example, let's take Deposit money to the Bank Account. The Depositor is the User Mode with purpose of deposit money. In User Mode depositor can't execute any processes. He or She has to give a system call to Kernel Mode which act as bank officer. Giving the money to the officer and give account details is the system call. Kernel Mode can access directly with any hardware and execute the process and display the outcome to the user. Which means officer do the processing part to complete the depositor call and tell him or her that process is complete. That means return the System Call. There is no user process without kernel mode, Kernel Mode is the ones who doing processing.
The Depositor - User Mode
Deposit Money - System Call
The Bank Officer - Kernel Mode
  • asked a question related to Operating Systems
Question
6 answers
I've been doing transwell experiment recently, however when I'm counting cells with ImageJ, it always goes wrong, I can't find out the reason.
1: Image, Type, 8-bit
2: Image, Adjust, threshold
3: Process, Binary, Watershed
4: Analyze, Analyze particles
the final result of the cell counts: 2787, which is apparently wrong, the number I counted is 330.
Operating System: macOS; ImageJ is the latest version.
Please share if anyone has encountered the same question or have a solution to it.
Relevant answer
Answer
thank you for your answers, I reversed the picture, and set the particle size to 700( earlier was 0.05, way too small ), finally got the right number.
  • asked a question related to Operating Systems
Question
3 answers
I am developing a tool . A GUI interface ( using pyqtgraph) continuously read high baudrate data from serial port and need processing to plot in the GUI in Real-time.
GUI will run on main thread, so currently I am doing the data collection and preprocessing in a thread. But problem is here. Python threads does not give priority controlling. Most of the time data collection and preprocessing is getting less amount of CPU.
Should I go for multi processing or any idea to improve the current strategy?
  • asked a question related to Operating Systems
Question
57 answers
Conceptually I see equalities in Human Body Functionalities and Computer Operating System processes.
What do you feel, the processes of both are happening in the same way?
If yes what are the similarities ?
If not what are the differences?
Relevant answer
Answer
Though the process of the human body and the devices differs. When we think about the functionality of the body and the devices we can see some equalities. If a human wants to calculate a math problem first he will analyze and find the inputs for it and then he will process it through the brain then, at last, he will say the answer for it. Like that in a computer operating system if users want to open an application operating system will analyze it with the processor and it opens the application. But it only does what we tall it to do. but humans work and do things by thinking out of the box.
  • asked a question related to Operating Systems
Question
7 answers
I'm targeting to deploy a mesh network and manually configure MANET routing protocols. I'm preparing scenarios, architectures, and hard devices needed to do that. Are there some step-by-step guidelines?
Relevant answer
Thx for your suggestion. I'm going to look between Ubuntu Core and Rasbian.
  • asked a question related to Operating Systems
Question
10 answers
How different is the software development for IoT when compared to traditional software development?
I understand that there are a couple of challenges in this domain, like:
1. Computing power of the devices.
2. Security issues.
3. Operating system based issues.
And many more.
Are there any other factors too that set this field apart from the conventional software development field?
Do traditional software design principles offer any help?
Are there any good resources to get a better understanding of this topic, to know the challenges in this field and also to know the recent advances?
Relevant answer
Answer
IoT-specific protocols already exist at every layer of the OSI (open system interconnection) model, and the wide number of use cases across vertical industries guarantees that many new standards will emerge. The relatively high-ranking position of standards compared to other responses is a little unexpected because it is a more strategic issue and one that takes time, commitment, and investment to address. Therefore, it is encouraging to see that large enterprises recognize the significance of one of the more complex issues associated with IoT development. https://www.rtinsights.com/is-iot-development-that-different-from-web-development/
  • asked a question related to Operating Systems
Question
3 answers
I want to create a N.N which can learn person OS usage based on their use of application and data related to specific application's background time, usage frequency, usage time of the application (elapsed time) and foreground time of the application to predict scheduling of the processes and memory requirements.
This neural network can help predict user behaviour and pre scheduled its working and system instructions rather than working on real time, to create a faster system response.
Please refer: for more detailed explanation of the system discussed above and research done on it
Relevant answer
Answer
Interesting
  • asked a question related to Operating Systems
Question
3 answers
Hard drive crashed on an old windows 2000 that was used to control a TA Instruments 2910 DSC. Installed new hard drive and I am trying to figure out where I can find the software/operating system for the TA 2910 DSC. Instructions say it is located in the DSC module. Also need universal analysis software. Any help would be greatly appreciated.
Relevant answer
Answer
Universal Analysis can be downloaded freely from TA website and installed on any computer. Probably, this should also work for TA Advantage that is currently used to control the instruments, but I never had this issue, so I cannot say that for sure.
  • asked a question related to Operating Systems
Question
12 answers
the answer is just its consider or if it not consider could you but the level type of cloud service for this (ex. SaaS,PaaS ...)
Relevant answer
Answer
Dear all respected researchers:
For clear understanding of this subject, you can refer to my new paper which contains a complete and detailed information:
Nidhal Kamel Taha El-Omari, “Cloud IoT as a Crucial Enabler: a Survey and Taxonomy”, Modern Applied Science, The Canadian Center of Science and Education, published by Canadian Center of Science and Education, Canada, p-ISSN: 1913-1844, e-ISSN: 1913-1852, DOI:10.5539/mas.v13n8p86, 13(8):86-149, 2019.
Or simply you can click the link below:
  • asked a question related to Operating Systems
Question
4 answers
I want to log user activity in a way to determine how they access their files on daily basis. For example, student have book in pdf and he read this file and other files during learning process. Log data will be used to model of users. Any ideas or suggestions are welcome, it would be best if there is some built in feature or tools inside Operating system so user stay unaware of tracking their behavior.
Relevant answer
Answer
Hi Goran,
Your best option is creating a windows service (.net) and using FileSystemWatcher class for file monitoring. It can be used to monitor network shares also. Anyway, as Rivalino said it can also be done creating file minifilter driver which resides in kernel space or try to use API hooking using Microsoft Detours package.
  • asked a question related to Operating Systems
Question
2 answers
operating system
Relevant answer
Answer
MS Windows Azure provides all three major services: IaaS, PaaS and SaaS.
  • asked a question related to Operating Systems
Question
4 answers
There are many works on cloud task scheduling that mainly address run-time efficient scheduling of tasks submitted to a cloud. The problem is much similar to the generic problem of scheduling processes in a generic operating systems. Average turnaround time is a system oriented metric that is optimized in process scheduling algorithms such as shortest-job-first or highest-response-ratio-next.
A point that is confusing for me is why scheduling in cloud service centers is treated so much differently than generic OSs ? What are cloud specific challenges that lead to evolutionary solutions instead of deterministic algorithms for generic OSs?
Relevant answer
Answer
Thank you all!
  • asked a question related to Operating Systems
Question
3 answers
Hi everyone
Hope you are doing well. Is there anyone who is working on ROS ( Robot Operating System ). I need one favor to convert .bag files in to .csv . I would appreciate for your kind response.
Regards
Relevant answer
Answer
Thanks to all of you for your prompt response
  • asked a question related to Operating Systems
Question
9 answers
How to configure open stack in a system? Which OS is best suited for cloud configuration?
Relevant answer
Answer
Hi,
i suggest installing Openstack via the Kolla Project. Its a supported Openstack Project. It runs a full Openstack installation on ubuntu or centos. It supports several Openstack versions and additional projects.
I would say its the de facto standard of installing Openstack
  • asked a question related to Operating Systems
Question
5 answers
I am currently doing my thesis in the topic "Anomaly Detection System for SCADA".
My work is focused on finding malicious data in Modbus/TCP packets that can cause a failure in a Power Plant (SCADA system).
From my understanding, Master and Slaves devices in SCADA systems communicate through Modbus/TCP protocol, 
e.g. Master sends to Slave: Query -> Write single Coil(5)
                    Slave to Master: Response -> Write single Coil(5)
Since I would like to use this dataset to train Machine Learning algorithms, I should need a big amount of data composed of benign and malicious Modbus/TCP packets (pcap files for example).
Does somebody knows where could I get this testbeds pcap filas?
  • asked a question related to Operating Systems
Question
7 answers
Hi,
I am looking for reviewing journals/articles in the following areas.
1) Computer Applications, Embedded Systems, Software Engineering, Communication Protocols, Operating Systems.
2) Security/AAA(Authentication, Authorization and Accounting)/Policy/Identity Networking.
3) Data Structures, Algorithms and Programming.
4) Wireless Networking.
5) Software Architecture.
Please point me to any international journals accepting new reviewers.
Thanks,
Subash
Relevant answer
Answer
Search on these valuable files
  • asked a question related to Operating Systems
Question
3 answers
Hi,
I work in a lab where we try to extend the capacity of the Hololens to process point cloud data. One way would be to accelerate some algorithms by running  them on the GPU through OpenCL. 
The Hololens CPU is an Atom processor with Intel® HD Graphics supposed to support OpenCL:
The problem is that the OpenCL drivers do not seem to be installed on the device and I cannot find how to install them. 
Does anybody have succeed in running OpenCL code on the Hololens? If so, how did you do it?
Regards,
Bruno
P.S.: Did anybody succeeded in opening a console to run command line programs or scripts on the Hololens. That might be part of the solution.
P.S.: Please, refrain from vague suggestions like "try through the device portal".
Relevant answer
Answer
Anybody found anything new since I posted this question?
  • asked a question related to Operating Systems
Question
7 answers
Hi
Please, how can we make a new operating system ?
Is the method to bring some developers with strong background in theoretical operating system operations and then they should learn from the source codes from another operating systems such as Linux various versions. Then, you can write your operating system and then testing it with ethical hackers to fix the security issues. Then, you can deploy it for some users as testing version. Then, it is validated to be used.
Please, any help for developers to do this than talking alot in useless things.
Thanks
Osman
Relevant answer
Answer
Obviously you are new to this. The first step to anything is coming up with a name. A name that can rally developers to your cause. Act fast, all the good names are taken. Without a name, you can't even market or sell or profiteer from your OS - and what good is that. ( Read Dilbert for details. )
The problem you have is pretty much it has all been done. Who wants to spend their time on re-creation rather than innovation. So you need a hook, something that is a minimally viable kernel.
So what is the thing that this new OS is to do better?
Back to Dilbert, you need a project you can market to developers as something worth working on. THAT is how you get other people to code your operating system. It also helps to have done some of the heavy lifting. That minimally viable kernel, that shows you are more than a dilettante or a provocateur.
So what is your pitch? Why do we need a new operating system, why do we need to code it for you? Go....
  • asked a question related to Operating Systems
Question
4 answers
I am trying to make changed in AODV Protocal for which i need to rebuild ns2. Rebuild NS2 (Network Simulator) in Ubantu never ends, every time i have to terminate the Terminal....I did wait for approx 20 minutes, Please suggest something?
Relevant answer
Answer
  • asked a question related to Operating Systems
Question
2 answers
Now that we have support for fault recovery in VirtuosoNext, We have been wondering how extensive the coverage could be in real-life systems. The issue is that data on failure root causes is either considered as confidential, either narrowly focusing on specific elements (e.g. hardware reliability). We cannot really find statistical data for these system level failures. Do you know of any such data?
In a real system, we have layers and we have some assumptions. Firstly, todays hardware can be considered as highly reliable. Of course, it assumes that design rules were followed. If hardware fails, it will most often be because faults are introduced from the outside (bit flips, power supply spikes, etc, I/O issues, ...). Secondly, software can be correct (e.g. when formally developed and proofed), but will likely still contain residual errors. These can be due to incomplete specifications, numerical instability, compiler errors, memory access violations, etc. To simplify things, we also have to assume that the hardware provides some support in detection such faults. Memory management circuits can detect memory access violations, illegal instructions are data errors can generate an exception interrupt and at a coarser grain level, time-outs can signal that a complete unit is no longer responding. Everything else, might require redundancy in the architecture.
The RTOS kernel of VirtuosoNext handles faults detected by the CPU as exceptions:
Memory access violations (triggered by bit flips, but most likely software errors or security breaches).
Numerical exceptions: can be triggered by I/O not being clamped, but also by software errors and algorithmic instability.
Illegal instructions: pointer errors, bit flips, security breaches, …
Above support aims at providing continuity of the real-time embedded applications even when faults as above occur. The development environment assists in fine-grain space and time partitioning but also allows to define automatic "clean-up and recovery" actions. The code generators can be extended to automatically generate temporal and spatial redundancy (because VirtuosoNext is MP-transparent). 
Much of such fault recovery support can of course be manually programmed, but the ideal case is that this is automated. The latter should be based on a trade-off analysis. Note that todays practice is often coarse grain. If a fault occurs, the whole application of even the complete processing system is rebooted. Even if such an event can have a low probability, in many cases it can be catastrophic. Boot times might be relatively fast with small programs (the code must be read from e.g. flash and the system re-initialised) but if the time constraints are too short (read: micro- or milliseconds) and the code is relatively large, this is not a real option. Hence, the system should prevent that a reboot is the last option available.
In order to provide such support in a meaningful (and economical) way, we need to know more about the residual probabilities of failure and errors in a real (embedded) system. We cannot really find statistical data for these system level failures. Do you know about any such data? We are aware that this might not be trivial, but your help will be greatly appreciated. Contact me at eric.verhulst (at) altreonic.com
Relevant answer
Answer
I fully agree that HW (when correctly designed) is the least likely to fail, at least the processor. Memory and power subsystems do fail (because designers are optimistic). Nevertheless, the responses I had until now mainly point to HW reliability data. Its my belief that the most system level failures (think embedded, safety/mission critical) are due to programming errors, I/O issues (related to data representation and range), power supply glitches. One can more or less attribute these further to incomplete specifications. E.g. in VirtuosoNext we now catch processor exceptions and recover very fast but the exception has an origin, typically memory violation (pointer errors), non-converging algorithms, numerical issues like overflow, etc. The issue is that in order to improve the situation and develop optimal fault tolerance strategies, one needs data. What is the probability of these happening? It looks like nobody, even the big avionics players, have such data. Of course, the scope is potentially very wide as many issues are process related, and ultimately education related. Still, I am surprised how large organisations keep repeating the same "mistakes". Many catastrophic failures in embedded, for example at ESA, are related to overflows of sensor data. Its easy to fix by clamping them and by modeling such a situation during design. 
  • asked a question related to Operating Systems
Question
10 answers
Wearable devices typically need a compact operating system to fit into low-power microcontrollers.
Relevant answer
Answer
thanks @U. Dreher for your answer.
  • asked a question related to Operating Systems
Question
4 answers
What happens to the R0 register value after the execution of DEC R0 using 8051 (before the execution R0=0x00).
Relevant answer
Answer
@Rahis Kumar Yadav: Sorry, but that's not correct, and U. Dreher is right: Both "INC" and "DEC" cause cyclic counting, i. e. in the upward direction (INC) is the maximum value (0xFF for 8 bit) followed by the minimum value (0x00), and vice versa in the downward direction (DEC). INC and DEC work as well if you interpret the register content as two's complement numbers: Counting down, after 0 = 0x00 comes -1 = 0xFF.
P.S. @Rahis Kumar Yadav: On a second thought and reading the question again, you are right: After the execution of DEC R0 the content of the register remains 0xFF until another instruction changes it. ;-)
  • asked a question related to Operating Systems
Question
3 answers
I want to find the total memory access time for a matrix program. The formula is 
MAT = HITRate × CacheAccessTime + MissRate × RAMAccessTime 
I have calculated the cache miss and hit rate by cache grind. But I dont know how to find the cache access time and Ram access time? Kindly I need your help. Is there any tool like perf and cache grid which find the cache and Ram access time in ubunutu.
Relevant answer
Answer
As a practical matter the measurements are intrinsic to the hardware.   There are testing tools which boot up on its own RTOS and will test the system.  In other words, this is a borrow, not build situation.  But if you insist on building, here is how I would approach it, apologies in advance for the too many words:  
To Samir's point, doing this in an arbitrary live OS is considerably more tricky.
You will need to use some method to enter a non-preemptable privilege time execution state - such as you might need to happen during an interrupt service routine.  The name used to describe this execution environment will vary from OS to OS.  
In linux they call this an "atomic context" - for obvious reasons - but also if you mess up the kernel goes nuclear.  For example, you cannot call any blocking functions, and using swapped out virtual memory?  Kaboom!
There are several examples of writing ISR's for Linux - find one you like.   You may, depending on the OS, be able to use an atomic context outside of an ISR, in which case you might be able to implement a kernel module implementing a procfs interface to interrogate the test code.  that makes running the tests and getting the results easy. 
You would basically disable interrupts while your test code beats up on the RAM.  You can still use the on-CPU super high resolution timer which does still advance during an interrupt blackout.   Provided the amount of time you stall the kernel is not too long ( single digit seconds ) you should be OK. 
  • asked a question related to Operating Systems
Question
4 answers
I am working on Energy optimisation and using DVFS technique. For this purpose I have to give game traces workload i.e game workload instead of planet lab own workload. Currently I am using cloudsim, Can any one suggest the way to add external workload in cloud sim planet lab power Dvfs example?
  • asked a question related to Operating Systems
Question
3 answers
I am using perf for checking the cache performance I am using the following command in ubuntu but it does not give the required output. I want to check cache references and cache-misses. this command is working on core i5 but it does not work on the virtual machine.
$ perf stat -r 5 -B perf stat -r 5 -B -e cache-references,cache-misses, ./cmiss
the output of the above command on virtual machine is:
Performance counter stats for './cmiss' (5 runs):
<not supported> cache-references
<not supported> cache-misses
66.994228 cpu-clock ( +- 0.14% )
0.067178350 seconds time elapsed ( +- 0.13% )
Relevant answer
Answer
The data you want is in hardware based Performance Monitoring Counters.   These are typically NOT emulated by virtual machine environments because they are overhead and generally meaningless given the underlying caching statistics are maintained on a per core / package basis and the workload can be scheduled to run on a variety of cores, each with its own hardware level statistics.
Some virtualization technologies can emulate these counters.   It does so by taking a picture of the actual hardware counters on the cores currently running the workload.  Then when the workload is task switched off the core, the delta in the underlying physical counters is computed and applied to a virtual counter.   Since the underlyign time base is also virtual, computing pages fault per second, for example, is meaningless as you have no way to know if the workload was scheduled for a 100% duty cycle or 1%.   e.g. the meaning of 100 faults per "second" varies greatly depending on how much actual compute time the workload had available.
As mentioned by Peter, this housekeeping and also the diminished meaning / significance to the statistics makes it a futile effort in most cases.
You can, for example, in VMWARE ESX, enable PMC - with a lot of caveats.  Specifically it complicates live move comparability, as the guests cannot be migrated to a host with even seemingly trivial differences in PMC capabilities.  In EVC, where the guests are lied to, making all hosts seems like a lowest common denominator processor model / stepping, you cannot enable the counters because they cannot be reliably masked - the guest OS may still discover the counters are available on boot, then once the guest is migrated, an invalid opcode will be thrown on access.
So.... short answer: no.   long answer: yes, with animal sacrifices.
-- Bob
  • asked a question related to Operating Systems
Question
2 answers
TORA tcl script is not executing without cloning of AODV in TORA. Is there any other way to execute TORA in NS2.35?
Relevant answer
Answer
 Respected Himadri Nath Saha Sir,
I have already done the steps shown as in the above link. But still my error is not solved
  • asked a question related to Operating Systems
Question
4 answers
I would like to see the effects of inlining C/C++ functions at the source code level.
After some searchs it looks like IDEs like Eclipse can do that on Java code, but not in C/C++. Am I right?
Also I would like to control when to inline or not inline a function at the calling site. I understand that Intel's ICC "#pragma forceinline" is exactly addressing this, in contrast to the GCC "__attribute__((always_inline))" which is addressing all the function invocations.
I understand that it would be possible to implement such translation using clang. Do you foresee any major roadblock for that?
I am also wondering if anyone has done anything similar, or there exist other alternatives I haven't though of...
Relevant answer
Answer
I implemented myself a tool do this. Find the justification to start from scratch here
  • asked a question related to Operating Systems
Question
3 answers
I want to use this model for a domain of 150*150 km for forecasting weather parameters.
Please suggest these:
1) Operating System
2) Compiler
3) RAM and ROM
4) Any related material for this purpose.
Relevant answer
  • asked a question related to Operating Systems
Question
1 answer
Hello, all. is there any mechanism in the Xen scheduler to check the required cache of individual VM on dynamic basis? When virtual machine creates then how the Xen scheduler will detect that how much cache is required to this particular VM. and re-partition the cache according to each VM requirement. I need to check which function in the Xen source code?? Kindly I need your help.
Relevant answer
Answer
Hi Zakira,
I believe it could answer your question:
Cache Allocation Technology (CAT) in:
BR,
Fábio
  • asked a question related to Operating Systems
Question
3 answers
I'm doing my undergraduate thesis in "Power Aware Disk scheduling algorithms". I'm presently working on simulating and testing of a new algorithm. Can you tell me from where I can get traces especially of data centers consisting of several disks.?
Also, how can I know how much time and energy will it take to complete a disk request?
Relevant answer
Answer
Scheduling tools like TrueTime in MATLAB, TORSCHE Toolbox in matlab to understand the scheduling process
  • asked a question related to Operating Systems
Question
4 answers
What is the number of instructions (how big is the instruction set) in a modern general purpose CPU, for example an lntel Core i7?
Relevant answer
Answer
Dear Peter! Thank you very much for your answer.
I was looking just for a very simple approximation, and your ballpark estimate of thousands is good enough to me. I was looking for a way to understand the difference in complexity (in terms of number of instructions) between RISC microcontrollers with their 100 or so instructions and general purpose CPUs like the i7...
  • asked a question related to Operating Systems
Question
5 answers
It has already been proved that the performance of operable systems can be improved by the technique of redundancy (Cold standby and parallel) and by using proper repair facilities in normal weather conditions.
Relevant answer
Answer
Dear Sir,
              There are several types of repairs. If you will apply copula repair policy, it would show better performance than that of general repair.
  • asked a question related to Operating Systems
Question
9 answers
There is some place/repository where I can find some of implementation of the most common algorithms for VANETs using OMNET++ , VEINS and SUMO?
Can be any one, like DSR, AODV, PBR, GPSR. I created one algorithm and I want test him with another(s) algorithm(s)/protocol(s).
I tried VANETProjec (https://github.com/chaotictoejam/VANETProject), but didn't compile correctly.
I'd appreciate any help
Relevant answer
Answer
Why cant you try ns3 or ns2 with SUMO. As both the simulators have AODV. GPSR, DS R and DSDV protocol. Only way is you need to define your protocol in either of these simulators. But i have no idea on Veins
  • asked a question related to Operating Systems
  • asked a question related to Operating Systems
Question
4 answers
For example, task periods and computation times can be generated using Stafford's Randomfixedsum algorithm especially for tasks that have implicit deadlines. Can the same algorithm be used to generate arbitrary deadlines? Or, are there other accepted methods of doing so?
Thanks for your reply.
  • asked a question related to Operating Systems
Question
3 answers
in ULT, scheduling is performed at user level (without the kernel involvement). but if one user level thread leave CPU and another will be schedule, then we have to change the value of program counter, Stack pointer and CPU register. without the involvement of kernel, how we can access these registers (hardware)?
Relevant answer
  • asked a question related to Operating Systems
Question
13 answers
  • i m doing simulation RPL using cooja, and i want to calculate the remaing energy of each nodes after finishing simulation.
  • in fact i want to calculate the life time of nodes and i found that the remaing energy reflect this.
  • there is any other solution ?
Relevant answer
Answer
Dear Karima,
After setting the initial energy of your nodes, you need to update it according to an energy model such as the first order radio model or the discrete radio model. You need to select the energy model most appropriate to your nodes and application at hand.
Regards
  • asked a question related to Operating Systems
Question
2 answers
My understanding is that it depends upon the software. If software handles the faulty prefetching misses to recover from error and do error related work, it is faulty. If the software handler is implemented in a way that it ignores the prefetching misses and replace them with nops. then it is non faulty?
Any ideas and related sources will be useful
Relevant answer
Answer
TLB ==> Translation Lookaside Buffer?  If so, for the HW architecture(s) that I am familiar with, SW is unaware of a TLB miss and has no involvement.  Also, prefetch of instructions has no SW involvement at all -- this is a purely HW function.  The net result of either a TLB miss or a prefetch failure is a decreas in MIPS.  This is typically observed when a change in context occurs -- the machine execution slows down while the various caches, TLB, and pipelines are repopulated.  This can, of course, be mitigated with a branching pipeline design but it can never be eliminated.
  • asked a question related to Operating Systems
Question
8 answers
The Robot Operating System, as it's defined in the Wikipedia, is a set of software frameworks for robots. I want to know what are the practical uses of this operating system? are there any example of the uses out there ?  or it is just for research purposes ? 
What kind of help can I get from the ROS in my Robotic researches ?! 
Relevant answer
Answer
ROS is a software package which help robotic researchers to do their works in offline (mostly). For using, it is not necessary to know mathematical background of the robot says kinematics and dynamics.
It has several advanced features which enable robotic researchers to work very easy and convenient way.
There are several things, better you start using and you will find the importance. It is not hard to learn as well
  • asked a question related to Operating Systems
Question
1 answer
There are 4 types of MAC frame. Data frame, Acknowledgement frame, Beacon frame, Command frame. 
Device<-PAN Coordinator by Beacon frame
Device<-PAN Coordinator by Aknowledgment frame
Device<-PAN Coordinator by Data frame
If device connect first time to PAN coordinator, then Beacon frame should used. But When Command frame use to? 
Is Command frame once time transmit for all duration?
Some paper use this frame for emergency system. So Command frame transmit every Superframe order?
Relevant answer
Answer
Highest priority is always given for 'command frame' when compared to the data frame. So channel is always ready to receive or transmit command frame which is used to control an action. Generally, this type of working mechanism you can find in papers based on wireless sensor and actuator networks.
  • asked a question related to Operating Systems
Question
2 answers
Windows 2000 Active Directory data store, the actual database file, is %SystemRoot%\ntds\NTDS.DIT. The ntds.dit file is the heart of Active Directory including user accounts. Active Directory's database engine is the Extensible Storage Engine ( ESE ) which is based on the Jet database used by Exchange 5.5 and WINS. The ESE has the capability to grow to 16 terabytes which would be large enough for 10 million objects. Back to the real world. Only the Jet database can maniuplate information within the AD datastore.
Relevant answer
Answer
Hi, I am not sure what you exactly need to accomplish but some basic tutorial on ADS configuration you will find here:
During the installation you will be able to set a path to database file by default it is: %SystemRoot%\System32\Ntds.dit
  • asked a question related to Operating Systems
Question
3 answers
Operating System
Relevant answer
Answer
unfortunately there is no general solution, the details of expected deployment system are essential in the next steps of solution design
  • asked a question related to Operating Systems
Question
7 answers
I am building a framework in a .NET C# . where we can compile CUDA program on local machine and execute it on a remote machine, where capable GPU  exists. So is there a specific way to achieve this. I found psexec is used to execute commands on remote machine. Considering fact that CUDA devices has lot of limitations  to access remote machine. Is there better alternatives for this purpose. (I do not need existing solutions like rcuda and etc..)..
Relevant answer
Answer
Dear Shashikant,
I really doubt it works. The CUDA program must have access to the graphics driver, and from the description of PsExec it won't have. There may be other ways, if you have a Tesla card.
I have had a similar problem, and the best solution which worked great for me was the free TightVNC.
Hope it helps.
  • asked a question related to Operating Systems
Question
2 answers
Hi All.
How can we implement INTERACT(INT) feature selection process in WEKA ? I think SymmetricalUncertainityAttributeEvaluation (SU) is not enough. Right?
It also says after SU, do ''c-contribution''. But I couldn`t find it.
When I apply SymmetricalUncertainityAttributeEvaluation, it takes all the features(by default).. I have to do one more thing but I could`t figured it out.
Relevant answer
Answer
I don't know this "Interact" method specifically. But I'm assuming that it does not exist by default on WEKA and you want to implement it.
Before start you should answer to yourself these questions:
1) Are you confortable with Java programming language and object-oriented programming?
2) Is there other programming language in which your method is already implemented and is easy to use?
If you answer "NO" to question 1) or "YES" to question 2), I would suggest that you implement/use your method in other programming language and generate the modified database in an .arff or .csv file for posterior use in WEKA.
If you answered "YES" to question 1) and "NO" to question 2), you can implement your method as one of WEKA classes (maybe you can also share your code with the community).
Look in WEKA javadocs ... I guess you will have to implement a class using the "ASEvaluation" interface, then you can execute the feature selection through the use of a filter. For an example of class doing this, look at "ChiSquaredAttributeEval".
Regards,
Leno.
  • asked a question related to Operating Systems
Question
6 answers
I am trying to install Plink/Seq on linux elementary freya. Does anyone know if there are any pre-required packages to be installed before plink/seq?.
That's because it is just not working whatever I do. Thanks
Relevant answer
Answer
:)  ..... Will do.... Thanks again 
  • asked a question related to Operating Systems
Question
3 answers
Hi,
I just want to broadcast a message to a number of nodes, using Contiki socket.
Relevant answer
Answer
Hi I Putu Susila,
I just want to know whether contiki can be real-time. do you have an idea regarding this case?
thank you
  • asked a question related to Operating Systems
Question
4 answers
i am a looking for a good research on UX and UI of the modern Operating systems and how the OS is being evolved in the UX department and how is it going to be in the future.
Relevant answer
Answer
Operating System has two major roles mainly i.e. as a hardware resource manager and as a virtualization of Harware resources. I would disagree that OS has noting to do with the UX and UI. Altough UX and UI may be not counted as OS's main functions, but it is important part of our everyday means of interaction with computers.
  • asked a question related to Operating Systems
Question
11 answers
As far as I know it is highly unreccomended to set a proccess priority on MS Windows as Real-TIme, however on which cases it would be reccomended ?
Relevant answer
Answer
I would not mix realtime with quick processing. By defiition real time enables you only getting a guaranteed answering time. A guaranteed answer every 10 second would be also a real time process. So real time enables you that something is definitely happening also if the computer is very busy. So real time is something very usefull for data acquisition processes or to handle break conditions in a certain time window.
  • asked a question related to Operating Systems
Question
1 answer
The research may be concerning maritime ports, container terminals, general cargo terminals or yacht marinas.
Relevant answer
Answer
Hi: if i understood your question exactly, U can use the Tiny-Core linux dest. and its family. I hope that help.
  • asked a question related to Operating Systems
Question
2 answers
I am trying to find some performance parameters of middleware, so I want to calculate overhead on top of my original data size by middleware.
e.g., Data size = 8 bytes, sending 1000 times, will be = 8000 bytes, what will be overhead by middleware.
Relevant answer
Answer
Hello Raj,
    The first question to ask yourself is if you want to evaluate the overhead analytically or empirically. If you want to do an analytical evaluation then just look at the specification for Java RMI and RPC over DDS -- BTW notice that RTI-DDS is a DDS implementation not the Standard, you may also consider some more widely used and Open Source alternatives as OpenSplice (http://www.prismtech.com/dds-community).
If you are looking to do an empirical analysis then you can somehow estimate the temporal overhead performing some basic tests for small sample. The space overhead can be estimated indirectly by looking at the throughout delivered to the application vs. the bandwidth used on the network. In that case recall to take into account he protocol headers for level 4 and level 3, e.g. UDP + IP or TCP + IP.
HTH.
A+
  • asked a question related to Operating Systems
Question
1 answer
I refer to the receiver where conversations are heard on a smartphone
  • asked a question related to Operating Systems
Question
1 answer
Hello,
What do you consider the diversification operator in GAs? is it the crossover or the mutation operator? I always thought it is the crossover because it provides large jumps in the solution space by exchanging material between the parents, while mutation is the intensification because it allows for only a small change around the solution. However, it seems that many researchers consider mutation as the diversification strategy since it provides a variation in the solution to avoid getting stuck in a local optimum. What do you think?
Relevant answer
Answer
No, it is mutation not crossover that allows to avoid local minima in GA by introducing diversity in solution space.
Just search upon exploration and exploitation in GA.
  • asked a question related to Operating Systems
Question
3 answers
I have some tasks, which are further divided into runnables. Runnables execute as task instances. Runnables have dependencies within the tasks and also to other tasks's runnables. I have the information of deadlines and periods of tasks and the execution order of tasks and runnables i.e I can extract the data flow but the only point where I am stucking is that how can I get the information IF the task instances are executing within the period i.e obeying the deadlines and if not executing withtin the deadline then that task instance will execute in the next cycle or next period.
Any ideas ? Suggestions ?
p.s I dont have timing information for the execution of runnables.
Relevant answer
Answer
I am not certain I clearly understand your question. From what I get, you should perform Worst Case Execution Time (WCET) analysis on the code of your runnables, which gives you a conservative estimate of the worst possible execution time of your runnables. Then using this, you must define or choose a scheduling policy (unless you are working with an OS which imposes one). Such policies include Rate Monotonic, Deadline Monotonic, Earliest Deadline First etc. and usually come with analytic criterion which help you figure out if your system is schedulable in the worst case under these policies (i.e. if any possible execution of your system respects the timing constraints placed on your tasks). Usually, such criterion work only for task systems without dependencies between the task instances, but there also exist techniques that allow you to build schedules (or test the schedulability of the system) even in the presence of dependencies. If you want I can point you to some publications tackling this problem of real-time scheduling with dependencies.
I hope this will help you.
  • asked a question related to Operating Systems
Question
11 answers
My current understanding is that the OS steps in only for page faults, so this should be difficult.
Relevant answer
Answer
Have a look at Valgrind, it is a very comprehensive tool for doing this sort of work (I think it should be able to do what you need):
The tools for cache behaviour analysis are particularly good IMO.
  • asked a question related to Operating Systems
Question
5 answers
I need to redesign hardware again of all devices like mobile and laptop  to be consists of configurable blocks then built os based on HDL language.
is it possible or not and why? 
Relevant answer
Answer
One way of looking at firmware is that it is fossilized software. One way of looking at hardware is that it is fossilized firmware. When you fossilize software you lose some of it's flexibility it becomes a static thing where the dynamics are set by bios settings or drivers that have to be loaded at run-time.
 A HDL Language or Hardware Definition Language is meant to translate software directly into hardware. I am not sure you could achieve the dynamism of a hardware/firmware/Software system with just an HDL language. To redesign even a fraction of the systems to the same HDL language OS would be a major undertaking because there are so many platforms out there, on which to place an OS.
Why do you want to take on all the platforms at once?
  • asked a question related to Operating Systems
Question
3 answers
Agilent N3520M DSPedia self-paced training DVD DSP for Communications, Training Curriculum and SystemVue Resource DVD (5-user license)
Relevant answer
Answer
Aamir,
My misunderstanding. I don't have the materials only the reference where to get them.
Best wishes.
Janet
  • asked a question related to Operating Systems
Question
8 answers
How can I create a virtual environment with low clock speed to study about application performance ?
(i.e) I wish to create few Mhz clock speed environment with in my multi core Ghz processor (if possible control on my windows 8.1 operating system)
Please share Tool name so far you come across.
Thank you.
Relevant answer
Answer
Computer processors are simulated as discrete systems due to their state transitions being governed by the clock. So there is no difference on simulating a MHZ or a GHz processor other than the running time of the simulation. There are many available simulators on line, some are able to simulate whole machines running Linux and others are more specific procensors internal components. You should define the specific kind of simulation you want.
A virtualization software isn't a simulator, it is a special mode of  execution of a processor which redirects some hardware instructions and contexts to a host operating system. 
  • asked a question related to Operating Systems
Question
9 answers
It is origin but many of its application does not works, for example: video, picture,... that is because of updating problem or something else. What should I do? Thanks in advance.
Relevant answer
Answer
Get rid of Windows and use Linux. It will be much more secure too. Equivalent applications are available for almost everything you might want to use, and for the occasional Windows application you can use Wine (a Windows emulator/API translator for Linux) or VirtualBox (a virtual machine which you can use to run a copy of Windows when you need it).
  • asked a question related to Operating Systems
Question
5 answers
Hi there,
I'm working on WSN and use OMNet++ simulation. Do some operating systems support WSN protocols better than others? 
What operating system supports the most protocols for WSN?
Relevant answer
Answer
It is not dependent on the operating system but on the Simulator one is using. ns2 is a good simulator, open source, well documented  and internationally accepted platform WSN simulation. It works on Linux and may take some time for people to get familiarized to it. However, one can develop new protocols and by modifying the ns2 source code, simulate the performance of the developed protocol using. 
  • asked a question related to Operating Systems
Question
6 answers
I am working on VANET and using NS-2.34. I am unable to perform beaconing. Should I have to patch WAVE/DSRC protocols in NS-2, if yes then where can I find the patch and example TCL files?
Relevant answer
Answer
Thank you all for the suggestions.
  • asked a question related to Operating Systems
Question
4 answers
Hi,
I want to hide the messages of startup and boot up Debian, and then show the splash screen (logo) instead of messages.
I did some work using Plymouth, but it didn't work so well. I tried to use kernel, bootup logo, but they didn't work on my system.
Recently I used FBI and wrote script on /etc/init.d/ but it didn't work.
Relevant answer
Answer
Are you suggesting boot spash logo which would be BIOS or initial kernel boot in Debian which I think is what you tried.  I am not clear in what the objective is as I assume a user can switch to any Terminal runtime Crtl+Atl F1-F7. I did change BIOS and also fiddled with basic Linux to have a clean boot-up, with or without logo but depending on the runmode terminal I switched to gives feedback or blank or Logo with login prompt.  But what about remote boot via another terminal, what would you like to be displayed?  
  • asked a question related to Operating Systems
Question
3 answers
Lmbench is a series of micro benchmarks intended to measure basic operating system and hardware system metrics.
Relevant answer
Answer
You can manually ask the Linux kernel to perform an oomkill by triggering the appropriate system request, e.g.:
echo f > /proc/sysrq-trigger
  • asked a question related to Operating Systems
Question
3 answers
The program was executed successfully with gcc 4.3 but if I use gcc 4.6, will the execution speed vary ?
Relevant answer
Answer
Yes GCC 4.6 templates are much more optimized, intermediate code optimization is better, loop unroll is much more intelligent. For full report check: http://www.phoronix.com/scan.php?page=article&item=gcc_4248_intelamd&num=1
  • asked a question related to Operating Systems
Question
5 answers
ARM processors are used in handheld devices, thus, requiring energy efficient operation. Intel, on the other hand, is dominant in server market for high performance application and is not quite energy efficient. A 1Ghz core of ARM and Intel have quite different power ratings. What is the main difference in the ARM architectures that makes it energy efficient with respect to Intel? 
Relevant answer
Answer
ARM processor are often powered by small battery when being used extensively in consumer electronics, including PDAs, tablets, mobile phones, digital media and music players, handheld game consoles, calculators and computer peripherals such as Hard drives, printers, and routers.
The new ARM cortex are more energy efficient than new Intel Atom processor But only in terms of GHz/ W), but it is only a simple 32 bit RISC, whereas Intel has a powerful 64 bit CISC architecture. 
Intel x86 processors can deliver up to 3.6 GHz while consuming up to 130 W, or at the low end 1.8 GHz at 40 W. The ARM line of chips has been reported to deliver 1 GHz at 700 mW [320] (down by x50 in terms of GHz/W) and can reach up to 2 GHz; while still consuming less than a watt (down by x 75 in terms of GHz/W), So thr power savings seem to be substantial.
  • asked a question related to Operating Systems
Question
6 answers
Some operating systems can run other operating systems as guests or as "virtual machines". Examples include Solaris Zones and IBM mainframe LPARs on large systems. VMware, WINE and Lindows on smaller systems. How is this accomplished? How do the virtual environment map memory, interrupts, processes, etc to those on the host OS?
Relevant answer
Answer
It's a combination of the hypervisor software that uses emulation drivers (so that it can present well known hardware abstractions to the guest OS installed) as well as hardware features like Intel's VT-x and VT-d to accelerate this mapping from the hypervisor to the actual platform.  One important distinction is whether you are talking about a type 1 or type 2 hypervisor - i.e. one that runs on bear metal or one that runs on an OS and in turn allows you to install guest OS's, most often used for testing and convenience.  A simple way to learn about this is to just download Oracle Virtual Box (https://www.virtualbox.org/) and start installing guest OS's on you native Windows/Linux/Mac-OS-X system, but this is type 2.  To learn about a bare metal type 1, you'll need to try out VmWare ESX or Xen, or others that support bare metal install.  The type 2 are great for learning, teaching, testing, and general convenience.
  • asked a question related to Operating Systems
Question
17 answers
I want to use ns-3 for research in nano sensor networks. I don't know which OS and which version of NS-3 is useful to me for that. 
Relevant answer
Answer
First of all, I would like to mention that Ns-3 is not an extension of ns-2; it is a new simulator.  However, both simulators are written in C++ but ns-3 is a new simulator that does not support the ns-2 APIs. Some models from ns-2 have already been ported from ns-2 to ns-3. The project will continue to maintain ns-2 while ns-3 is being built, and will study transition and integration mechanisms.
ns-3 is open-source, and the project strives to maintain an open environment for researchers to contribute and share their software.
You can install on Linux OS and Cygwin. In addition, NS3.2 is the latest version with useful features.
  • asked a question related to Operating Systems
Question
10 answers
I know there maybe different applications for robots and different software and operating system are optimized for each application, but I wonder if there maybe something very popular what is used in majority.
I would be grateful if you consider applications of each software/operating system you mention.
Relevant answer
Answer
I would agree with ROS, but it also depends upon your objectives. For education and entry level robotics, http://www.robotc.net/, is really basic and works with many education kits. ROS includes quite a bit of code and from my viewpoint not simple to embed it well into a simple system design. I prefer building up my own embedded Linux or FreeRTOS (http://www.freertos.org/) platform, bringing over key code libraries like OpenCV for computer vision, and building up my own sensor and actuator drivers and interfaces, but ROS is intended to save you this trouble. My observation though is that if you build and configure your own platform, you understand it well, it's just what you need and therefore more efficient, and you can run on a smaller and more efficient processor like TI-OMAP (Beagle boards and Gumstix), Raspberry Pi, or a Microchip MIPS processor.
  • asked a question related to Operating Systems
Question
6 answers
Context Switch happens when processes CPU time slice finishes or interruption happens.
Relevant answer
Answer
I think when the time slice ends, and when there is an interruption (different from the time slice) are two different cases. The context switch which occurs in both cases hardly depends on the underlying hardware (CPU). The context switch depends on the number of registers, etc... In the case of the end of the time slice, the cost of executing the next task (for a time quantum) really depends on the cost of the scheduling algorithm and not only the cost of the context switch. Most of modern CPU can effectively read/write all the registers in a single instruction. This makes difficult to be able to optimize this part at the OS level.
  • asked a question related to Operating Systems
Question
4 answers
How can we design a file system for storing the data? Will it be fine if we make a dummy program in C/C++ with a predefined size of window that accepts input of the file of 5KB and stores in it by maintaining the address table of each data block as well as the hierarchy. I know that in real, file system is a complex thing and more than this dummy program.
If there is any good material or simulation tool available for this then inform the same.
Relevant answer
Answer
I would suggest implementing it using a Filesystem in User Space (FUSE) under Linux (see http://fuse.sourceforge.net/). This way you can use normal development tools, debuggers etc. on your code (and it won't lock up your system if you make a mistake). You may also code in languages other than C if you wish. The API is well-documented and there are many example filesystems implemented in this way. You can benchmark performance of your proposed filesystem using well-known tools such as bonnie++, or using real filesystem-sensitive applications such as big databases, squid http proxy etc.
Alternatively you could look at some simulated operating system; maybe something like MOSS (http://www.ontko.com/moss/) might be suitable.
  • asked a question related to Operating Systems
Question
3 answers
Implementing threads could be in user space or kernel space.
Relevant answer
Answer
Hi,
It depends on the operating system. If you are talking about Linux then see "signal" in section 7 of the Linux manual:
"A signal may be generated (and thus pending) for a process as a whole
(e.g., when sent using kill(2)) or for a specific thread (e.g., certain
signals, such as SIGSEGV and SIGFPE, generated as a consequence of exe‐
cuting a specific machine-language instruction are thread directed, as
are signals targeted at a specific thread using pthread_kill(3)). A
process-directed signal may be delivered to any one of the threads that
does not currently have the signal blocked. If more than one of the
threads has the signal unblocked, then the kernel chooses an arbitrary
thread to which to deliver the signal."
Thus it also depends on your threads, if they block or not the SIGALRM signal. If you want to receive a process pending alarm with a specific thread, then only this thread should unblock the corresponding signal, and the other ones should block it. Be aware that the main thread (which corresponds to the main function in C) usually has the SIGALRM signal unmasked. This mask is inherited from the parent process if your process has been created through a fork(). By default the shell creates processes with SIGALRM enabled.
Hope it will help...