A Conceivable Origin of Machine Consciousness in the IDLE process
AA Conceivable Origin of Machine Consciousness inthe IDLE process
Norbert B´atfaiUniversity of DebrecenDepartment of Information Technology [email protected]
October 27, 2018
Abstract
In this short paper, we would like to call professional community’sattention to a daring idea that is surely unhelpful, but is exciting forprogrammers and anyway conflicts with the trend of energy consump-tion in computer systems.
Keywords:
Machine consciousness, IDLE process, Minix . Contents
Operating systems are very sophisticated programs that can create a dreamworld for users, in which there are processes, files, windows and etc. In asimilar manner, the human consciousness has also created a perfect dreamworld for us, in which there are smells, colors, words, numbers an so on.However operating systems are still passive programs in this sense that they1 a r X i v : . [ c s . O S ] S e p o exactly what we programmed into them. It is not at all surprising becausemachines have neither free will nor consciousness today. Namely, in the caseof operating systems, the IDLE process will be scheduled if there is nothingto do in the system. In the idle process our computer is doing nothing.A brief outline of the content of this paper is as follows. In the nextsection, we introduce the idea of Upright Operating Systems in conceptuallevel. In section 3, first step will have been taken towards implementationin such a way that we will have a closer look to the replacing IDLE processin Minix operating system. We set ourselves the aim of making some computing task in the idle processof the kernel. An open source operating system needs to be selected if thisgoal is to be achieved. We have chosen the Minix3 system [Herder et al.,2006]. The operating systems in which the IDLE process is replaced withsome computing task will be called Upright Operating Systems.The using of the word ”Upright” is an indication of the Upright Man,more specifically of the period of becoming human during which Homo Erec-tus may have taken an upright position.
Why would a computing have to be supported in the kernel space? Whynot sufficient a simple, entirely user level server program, which is startedby the user, whenever the user wishes to run it? In addition to the exclusionof the classical IDLE process goes against the trend of energy consumptionin computer systems.
We have only one argument that is principled or even also ethical: this wouldnot be a stoppable program. We will not be able to stop the computingwhenever we decide to use an Upright Operating Systems.
What computing should be taken at kernel level? Essentially, two ap-proaches may be envisaged. In the first approach, the operating systemwould observe itself operating, in such a way that it would make notes dur-ing its operation, which notes will be processed in idle periods. For example,in the case of Minix, the IPC traffic may be observed by the Minix kernel[Tanenbaum and Woodhull, 2005, examples on pp. 219], which in turn en-2bled the kernel to modify settings of a possible SJF (Shortest Job First) ora preemptive SJF (Shortest Remaining Time First) scheduler.In the other approach, the operating system, for example, with main-taining a common AIML (Artificial Intelligence Markup Language, [Epsteinet al., 2008, chap. 13]) file, would converge toward human consciousness.But we should remark that the most ideas arisen in this approach are alsoimplementable in the user level and are typically distributed.
It is an interesting question, how can Libet and Kornhuber’s results onthe timing of consciousness [Libet et al., 1979], [Kornhuber et al., 1976] beimplemented into an upright operating system?
The first step towards implementation is to replace the IDLE process. Inthe case of choosing Minix operating system, it is easy to find the sourcecode which implements IDLE process [Tanenbaum and Woodhull, 2005]. Itcan be found in file kernel/arch/i386/klib386.s . Here the IDLE processis not only a simple infinity loop, but which contains HLT statement whichreduces the CPU energy consumption.We don’t have to do nothing else than to replace the idle task refer-ence with an own one in the system image table in source kernel/table.c .Our simple own ”Hello, World!” style uos task that demonstrates replacing idle task defined in source kernel/uos.c is the following. Conclusion and further work
In the near future, we are going to accomplish the same firs step describedabove in Linux kernel. For the time being, we are thinking about the ques-tion: what computing should be taken at kernel level?
References
R. Epstein, G. Roberts, and G. Beber.
Parsing the Turing Test: Philosoph-ical and Methodological Issues in the Quest for the Thinking Computer .Springer Publishing Company, Incorporated, 2008. ISBN 1402096240,9781402096242.J. N. Herder, H. Bos, B. Gras, P. Homburg, and A. S. Tanenbaum. Minix3: a highly reliable, self-repairing operating system.
SIGOPS Oper. Syst.Rev. , 40(3):80–89, 2006. ISSN 0163-5980. doi: http://doi.acm.org/10.1145/1151374.1151391.H. H. Kornhuber, L. Deecke, and P. Scheid. Voluntary finger movement inman: Cerebral potentials and theory.
Biological Cybernetics , (23), 1976.B. Libet, E. Wright, B. Feinstein, , and D. K. Pearl. Subjective referral ofthe timing for a conscious sensory experience.
Brain , (102):193–224, 1979.A. S. Tanenbaum and A. S. Woodhull.