home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 4 / DATAFILE_PDCD4.iso / unix / riscbsd / docs / faq_txt < prev    next >
Encoding:
Text File  |  1996-10-07  |  33.8 KB  |  914 lines

  1. RiscBSD FAQ
  2. ===========
  3.  
  4. This FAQ is copyright (c) Mark Brinicombe 1995-1996, all rights reserved.
  5. Permission is granted to copy this document as a whole or in part provided
  6. that this copyright message is included in all copies.
  7.  
  8. RiscBSD X Window FAQ
  9. ====================
  10.  
  11. Sections 11 and 12 of the RiscBSD FAQ make up the RiscBSD X Window FAQ.
  12. This FAQ is copyright (c) Rob Black 1995-1996, all rights reserved.
  13. Permission is granted to copy this document as a whole or in part provided
  14. that this copyright message is included in all copies.
  15.  
  16. Questions 8.6, 9.2, 10.2 copyright (c) 1996 Markus Baeurle
  17.  
  18. The authors of this document provides no warranty, express or implied, as
  19. to the accuracy of the information contained here although all the
  20. information is supplied in good faith.
  21.  
  22. $Id: FAQ.txt,v 1.10 1996/08/06 21:07:14 mark Exp $
  23.  
  24. ------------------------------------------------------------------------------
  25. Contents:
  26.  
  27. 1. Basics of RiscBSD
  28. Q 1.1: What is RiscBSD
  29. Q 1.2: What type of machine is supported
  30. Q 1.3: What are the hardware requirements
  31. Q 1.4: What is the state of the A7000 port
  32.  
  33. 2. Availability and Information
  34. Q 2.1: When is the 1.2 release going to be available
  35. Q 2.2: How is RiscBSD available
  36. Q 2.3: Is there an FTP site for RiscBSD
  37. Q 2.4: Are there any FTP mirrors
  38. Q 2.5: How much does the CDROM cost
  39. Q 2.6: Where can I get more information on RiscBSD
  40. Q 2.7: Are there any mailing lists
  41. Q 2.8: How do I contact the kernel team?
  42. Q 2.9: Where do I get the sources
  43.  
  44. 3. The RiscBSD distribution
  45. Q 3.1: I have the Alpha-2 release: will I need to reinstall everything?
  46. Q 3.2: What packages are currently available?
  47. Q 3.3: What sizes are the current packages
  48.  
  49. 4. Kernel matters
  50. Q 4.1: Why is floating point so slow?
  51. Q 4.2: How big is the kernel
  52. Q 4.3: What processors does the kernel support
  53. Q 4.4: How do I configure a custom kernel ?
  54. Q 4.5: What are known kernel-related bugs in RiscBSD?
  55.  
  56. 5. Device drivers
  57. Q 5.1: What device drivers are available for standard RPC hardware
  58. Q 5.2: What SCSI cards are supported
  59. Q 5.3: What ethernet cards are supported
  60. Q 5.4: Will there be 16bit sound support?
  61. Q 5.5: Are there any other drivers under development/planned
  62. Q 5.6: Are there any cards which are unlikely to be supported in the near
  63. future?
  64. Q 5.7: What about ATAPI CDROM support ?
  65.  
  66. 6. Multiprocessor card (Simtec Hydra)
  67. Q 6.1: What is the current status of multiprocessor card support?
  68. Q 6.2: Will the card be used for running custom accelerators or full MP?
  69. Q 6.3: Will it be possible to run RiscBSD on a slave processor in a RiscOS
  70. window?
  71. Q 6.4: Can the 486 card be used from within RiscBSD?
  72. Q 6.5: What is the long term multiprocessor goal
  73.  
  74. 7. Ported Software
  75. Q 7.1: What software is available?
  76. Q 7.2: Can I compile C++ under RiscBSD?
  77. Q 7.3: What networking software is available?
  78. Q 7.4: Is MudOS available?
  79.  
  80. 8. Bugs and Errors
  81. Q 8.1: Who do I report bugs to?
  82. Q 8.2: savecore reports an error during multiuser startup.
  83. Q 8.3: What does proc size mismatch error mean ?
  84. Q 8.4: Global constructors in c++ code are not working
  85. Q 8.5: What does "Possible process deadlock due to shortage of L1 page
  86. tables." mean ?
  87. Q 8.6: I have plenty of memory, but gcc complains about "virtual memory
  88. exhausted" when it tries to compile a large source file.
  89.  
  90. 9. How do I ....
  91. Q 9.1: How do I add users the my system ?
  92. Q 9.2: How can I use my ATAPI CDROM under RiscBSD ?
  93.  
  94. 10. Performance matters
  95. Q 10.1: How good is GCC compared to Norcroft C
  96. Q 10.2: Why is my SCSI harddisk so slow?
  97.  
  98. 11. The X Window System
  99. Q 11.1: What is the minimum specification of machine to run X?
  100. Q 11.2: What is the current state of X?
  101. Q 11.3: Who do I report bugs to?
  102. Q 11.4: What are the known problems and features of X under RiscBSD?
  103. Q 11.5: Where is libXpm / xpm.h ?
  104. Q 11.6: Is Motif available?
  105. Q 11.7: Are programs compiled with Motif available?
  106. Q 11.8: How do I set up xdm?
  107.  
  108. 12. Troubleshooting X
  109. Q 12.1: I get error messages about missing devices.
  110. Q 12.2: Everything works if I'm root, but not otherwise.
  111. Q 12.3: X is really slow to start up and so are some X apps.
  112. Q 12.4: I get error messages about invalid keycodes.
  113.  
  114.  
  115.  
  116. Subject: 1. Basics of RiscBSD
  117.  
  118. Q 1.1: What is RiscBSD
  119. A: RiscBSD is a port of NetBSD to the ARM6+ family of processors running in
  120. 32bit data, 32bit address mode. The official NetBSD port name is
  121. NetBSD/arm32. RiscBSD is not just NetBSD/arm32 but builds on it adding
  122. packages like X11R6 and hosts of other software to form a much more complete
  123. system.
  124.  
  125.  
  126. Q 1.2: What type of machine is supported
  127. A: A Acorn RiscPC 600/700 or A7000 or a VLSI RC7500 motherboard.
  128.  
  129.  
  130. Q 1.3: What are the hardware requirements
  131. A: The latest release of RiscBSD including X11R6 requires a ARM6+ processor
  132. with a minimum of 8MB DRAM and 300MB of disk space.
  133. This answer is rather short and not very informative. I will extend it
  134. shortly.
  135.  
  136.  
  137. Q 1.4: What is the state of the A7000 port
  138. A: RiscBSD is almost ready to run on a A7000. The only part of the kernel
  139. that does not support the A7000 is the video memory and VIDC code. The
  140. kernel bootstrap needs to be extended (half done already) to reserve
  141. a chunk of DRAM for video memory on non-VRAM machines. In these cases
  142. the VIDC20 must be programmed slightly differently to deal with DRAM
  143. instead of VRAM.
  144. A new PS2 style mouse driver has now been written for the ARM7500.
  145.  
  146.   
  147. Subject: 2. Availability
  148.  
  149. Q 2.1: When is the 1.2 release going to be available
  150. A: Soon. A 1.2-beta release is on the ftp site. This is based of the
  151. NetBSD 1.2 beta release and is available for bug testing. As soon as the
  152. NetBSD 1.2 release is available all the RiscBSD sets will be rebuilt for 1.2
  153. and a RiscBSD 1.2 release will be made available.
  154. Current estimates put that at within the month.
  155.  
  156.  
  157. Q 2.2: How is RiscBSD available?
  158. A: Currently RiscBSD is available in binary form by FTP. Some source code
  159. may also be found on the ftp site but the core binary and kernel source code
  160. can be found on any NetBSD mirror site. In addition a CDROM release is
  161. RiscBSD is also being prepared.
  162.  
  163.  
  164. Q 2.3: Is there an FTP site for RiscBSD
  165. A: The official release site for RiscBSD is ftp.ph.kcl.ac.uk:/pub/acorn/RiscBSD
  166. This site will contain the latest release of RiscBSD along with user
  167. contributed software and various upgrades.
  168.  
  169.  
  170. Q 2.4: Are there any FTP mirrors
  171. A: The official  mirror sites for RiscBSD are:
  172.  
  173. ftp.uni-stuttgart.de:/pub/systems/acorn/riscbsd/
  174.  
  175. and a side effect of the stuttgart mirror
  176.  
  177. src.doc.ic.ac.uk:/computing/systems/archimedes/collections/uni-stuttgart/riscbsd/
  178.  
  179. NOTE: The FTP site mortimer.cc.ic.ac.uk:/pub/riscbsd/ is closed
  180.  
  181.  
  182. Q 2.5: How much does the CDROM cost?
  183. A: It costs 25UKP + VAT on CDROM from Plingboot (no credit cards). Check
  184. the documents directory on the ftp site for an order form. Orders should
  185. be sent to :
  186. PlingBoot,
  187. 50 Fordhook Avenue,
  188. Ealing.
  189. London
  190. W5 3LP
  191. Tel: 0181 993 2394
  192. Fax: 0181 992 6735
  193.  
  194.  
  195. Q 2.6: Where can I get more information on RiscBSD
  196. A: Information on RiscBSD can be obtained from the official RiscBSD WWW site
  197. http://www.ph.kcl.ac.uk/~amb/riscbsd/
  198.  
  199.  
  200. Q 2.7: Are there any mailing lists
  201. A: Yes. Currently there is a mailing list of RiscBSD users.
  202. To subscribe to the mailing list, send an email message to
  203.  
  204. majordomo@netbsd.org
  205.  
  206. with the message body
  207.  
  208. subscribe port-arm32
  209.  
  210. Notification will be returned when you are subscribed.
  211. To post messages to the mailing you should send mail to 
  212.  
  213. port-arm32@netbsd.org
  214.  
  215.  
  216. Q 2.8: How do I contact the kernel team?
  217. A: The kernel team can be contacted either individually by email or by
  218. sending an email to the kernel team mailing list core-riscbsd@tools.de
  219. Alternatively there are email forms on the WWW pages.
  220.  
  221.  
  222. Q 2.9: Where do I get the sources
  223. A: The sources to the kernel and the core binaries can be obtained from any
  224. NetBSD mirror site. Failing that they can be obtained from the master NetBSD
  225. FTP site at ftp.netbsd.org. Mirrors of this site can be found at
  226. ftp.demon.co.uk and src.doc.ic.ac.uk
  227. Other sources may be found on the RiscBSD FTP site in the directory
  228. /pub/acorn/RiscBSD/sources
  229. Certain patches may be require to the standard NetBSD source tree and these
  230. can be obtained from the directory /pub/acorn/RiscBSD/sources/patches on
  231. the RiscBSD FTP site.
  232. We would like to hold all the sources on the RiscBSD FTP site but are
  233. restricted by lack of disk space.
  234.  
  235.  
  236.  
  237. Subject: 3. The RiscBSD distribution
  238.  
  239. Q 3.1: I have the Alpha-2 release: will I need to reinstall everything?
  240. A: Yes, but not necessarily in one go. One of the main changes was
  241. the execution address of binaries due to moving the start of user processes
  242. address space from 4MB to 4KB. Current kernels support binaries compiled for
  243. both address but in the future support will be dropped for binaries running
  244. at 4MB. There are no changes to partition structures (as there were with the
  245. alpha -> alpha2 upgrade) so re-partitioning etc. is not required.
  246. Also the major numbers of a lot of devices were changed between the alpha2
  247. and beta releases. The upgrade filesystem should update all the device
  248. special files in /dev. You find find it necessary to run MAKEDEV manually.
  249.  
  250. Q 3.2: What packages are currently available?
  251. A: The list of available sets for RiscBSD changes frequently as new sets are
  252. added. The current list is as follows:
  253.  
  254. as252        OPT    Binutils 2.5.2 as and ld
  255. base        REQ    base distribution set
  256. bash        REC    bash shell. (sh with added features e.g. line editing)
  257. bison        OPT    GNU bison set
  258. cc263        OPT    GCC 2.6.3
  259. cc272        OPT    GCC 2.7.2
  260. cdtools        OPT    CDROM tools
  261. comp        OPT    compiler related distribution set
  262. config        REC    Configuration scripts and set installer.
  263. cvs        OPT    Concurrent versions system (source code management)
  264. dip        OPT    Dialup Internet Protocol distribution set
  265. etc        REQ    /etc distribution set
  266. g++upgrade    OPT    G++ upgrade set for cc272
  267. games        OPT    text console based games
  268. gmake        OPT    GNU make 3.74 set
  269. gs262        OPT    GNU Ghostscript 2.6.2, postscript previewer set
  270. gs262fonts    OPT    GNU Ghostscript 2.6.2 extra fonts set
  271. gs353        OPT    Aladdin Ghostscript 3.5.3, postscript previewer set
  272. httpd        OPT    NCSA HTTPD 1.4.2 set
  273. joe        OPT    joe 2.2 text editor set
  274. jpeg        OPT    JPEG library and convertion tools
  275. kern4049    REQ    kernel revision 4049
  276. kern4120    REQ    kernel revision 4120
  277. kern4121    REQ    kernel revision 4121
  278. kern4130    REQ    kernel revision 4130
  279. local        REC    local binaries and scripts
  280. man        OPT    manual pages set
  281. misc        REQ    miscellaneous distribution set
  282. nfspatch    OPT    replacement NFS binaries for NFS V3
  283. patch1        REC    patch set for base upgrades.
  284. perl        OPT    Practical Extraction and Report Language
  285. shells        OPT    Extra shells set (tcsh, bash, zsh) (superceeded)
  286. ssh        OPT    Secure shell
  287. sup        OPT    Software Upgrade Protocol set
  288. tcl        OPT    Tcl
  289. tcsh        REC    tcsh shell. (csh with added features e.g. line editing)
  290. text        OPT    text distribution set
  291. tk        OPT    Tk
  292. wuftpd        OPT    Enhanced ftp daemon
  293. zsh        OPT    zsh shell.
  294.  
  295. x11r6        OPT    X11R6 base distribution
  296. x11r6man    OPT    X11R6 manual distribution
  297. x11r6upgrade    OPT    X11R6 upgrade distribution (requires xarm16)
  298. xarm15        OPT    Xarm 8bpp Xserver release 15
  299. xarm15m        OPT    Xarm 1bpp Xserver release 15
  300. xarm16        OPT    Xarm 8bpp Xserver release 16
  301. xarm16m        OPT    Xarm 1bpp Xserver release 16
  302. xarchie        OPT     X11 interface to archie
  303. xaw3d        OPT    3D version of the Xaw library.
  304. xcontrib    OPT    X11 contrib programs
  305. xdm        OPT    XDM config files
  306. xfig        OPT    XFig, X11R6 drawing package
  307. xftp        OPT    X11 front end to ftp
  308. xmosaic        OPT    Mosaic WWW brower for X
  309. xpaint        OPT    X11 paint package
  310. xpixmap        OPT    Xpm editor
  311. xpm        OPT    Xpm library for X11
  312. xrn        OPT    X11 news reader
  313. xutils        OPT    X utilities (xosview ..)
  314. xv         OPT    XV 3.10 image viewer
  315. axe        OPT    X11 text editor
  316. axe3d        OPT    X11 text editor (with 3D widgit set)
  317. chimera        OPT    X11 WWW browser
  318. ctwm        OPT    CTWM window manager for X11R6
  319. gview        OPT    Ghostview, X11 postscript previwer
  320. fvwm        OPT    FVWM window manager for X11R6
  321. knews        OPT    X11 Threaded news reader
  322.  
  323. The following sets have not yet been upgraded to a beta state
  324.  
  325. texbin        OPT    TeX binaries
  326. texlib        OPT    TeX library stuff
  327. xemacs        OPT    XEmacs
  328.  
  329. REQ - Required set
  330. OPT - Optional set
  331. REC - Recommended set
  332.  
  333. Note: The shell set has been superceeded by three separate sets bash, tcsh
  334. and zsh.
  335.  
  336.  
  337. Q 3.3: What sizes are the current packages
  338. A: The list of available sets for RiscBSD changes frequently as new sets are
  339. added. The current list is as follows:
  340.  
  341. Package        Compresses size Uncompressed size
  342. as252           226702       552960
  343. axe          1413988      3215360
  344. axe3d          1420020      3225600
  345. base         20264305     46151680
  346. bash           307598       788480
  347. bison           123182       368640
  348. cc263          2139990      5253120
  349. cc272          2248013      5509120
  350. cdtools            77026      ~112640
  351. chimera           607375      1474560
  352. comp          3110998     11335680
  353. config            13407       ~92160
  354. ctwm           600653      1925120
  355. cvs           349075       849920
  356. dip           112828       276480
  357. etc            66160       348160
  358. fvwm          1966783      4464640
  359. g++upgrade       338183          N/A
  360. games          4758402     10803200
  361. gmake           234442       665600
  362. gs262           786962      1925120
  363. gs262fonts      1714119      3409920
  364. gs353          1197290      3164160
  365. gview           536189      1198080
  366. httpd           382791      1075200
  367. joe           204146       501760
  368. jpeg           298992       716800
  369. kern4049       544127      1167360
  370. kern4120       568122      1259520
  371. kern4121       569079      1259520
  372. kern4130       574510      1269760
  373. knews           545926      1218560
  374. local           220187       512000
  375. man           849382      3379200
  376. misc          1776314      6021120
  377. nfspatch       124099       276480
  378. patch1           733362      1812480
  379. perl          1534665      4904960
  380. shells           802260      1945600
  381. ssh           788971      1761280
  382. sup           307490       675840
  383. tcl           394703      1648640
  384. tcsh           274719       655360
  385. text          1277940      3952640
  386. tk          1317293      4341760
  387. wuftpd           231758       522240
  388. x11r6         18800176     50964480
  389. x11r6man       715160      1300480
  390. x11r6upgrade     13768507     33331200
  391. xarchie           601578      1392640
  392. xarm15           829711      2170880
  393. xarm15m           781669      2048000
  394. xarm16           830602      2201600
  395. xarm16m           781218      2037760
  396. xaw3d           223506       829440
  397. xcontrib      4039780      9123840
  398. xdm             2778        20480
  399. xfig           855736      1945600
  400. xftp           666350      1628160
  401. xmosaic          1264388          N/A
  402. xpaint           679972      1679360
  403. xpixmap           582800      1351680
  404. xpm           401812       911360
  405. xrn           583446      1310720
  406. xutils           207884          N/A
  407. xv           973846      2344960
  408. zsh           223979       532480
  409.  
  410. Total           ~104908382     ~265113600
  411.  
  412. xemacs         10613054     38768640    ** Alpha2 set **
  413.  
  414. NOTE: The uncompresses size is the size for the uncompressed binaries and
  415. data files. It does not include filesystem overheads and block rounding.
  416.  
  417.  
  418.  
  419. Subject: 4. Kernel matters
  420.  
  421. Q 4.1: Why is floating point so slow?
  422. A: Because all floating point instructions are emulated. RiscBSD uses a
  423. floating point emulator from ARM Ltd and has the some core as the RiscOS
  424. FPE.
  425.  
  426.  
  427. Q 4.2: How big is the kernel
  428. A: Typical RiscBSD kernels are somewhere around 1MB. The kernel running on
  429. the machine this FAQ is being written on is 1.1MB This has all the basic
  430. drivers, SCSI support, full TCPIP and NFS (PHARM & VOYAGER configurations).
  431. If networking is not required kernels as small as 600K can be built. So far
  432. the largest kernel that has been built was 1450K (GENERIC configuration)
  433.  
  434.  
  435. Q 4.3: What processors does the kernel support
  436. A: Currently the kernel supports ARM610, ARM700 & ARM710.
  437. The ARM7500 processor core is supported but currently VIDC20 with no DRAM is
  438. not.
  439. The StrongARM is not yet supported yet. Work has started on added support
  440. but this will not progress very far until a SA-110 is made available to the
  441. kernel team.
  442.  
  443. Q 4.4: How do I configure a custom kernel ?
  444. A: A kernel configuration guide (config_guide.txt) can be found in the docs
  445. directory on the RiscBSD ftp site or one of its mirrors. This explains the
  446. proceedure for installing the kernel sources, patching them as require,
  447. creating your own kernel configuration file and compiling the kernel.
  448.  
  449.  
  450. Q 4.5: What are known kernel-related bugs in RiscBSD?
  451. A: There are still several bugs in the RiscBSD kernel.
  452. The known bugs in bsd-4444 :
  453.  
  454.    * Writing to DOS floppies often results in files which give disk errors
  455.      when reading them afterwards. Sometimes you can get readable files if you
  456.      don't mount the floppy but use the mtools.
  457.  
  458.    * Due to timing problems, SLIP connections often suffer from silo and ibuf
  459.      overflows. The former seem to have reduced in favour of ibuf overflows.
  460.      This only reduces the performance of your serial connections.
  461.  
  462.    * Occasionally, one of the indirect block address fields in an inode would
  463.      get trashed, which would result in the loss of the corresponding file.
  464.      The trashing is now prevented, but the bug causing the wrong value still
  465.      exists. This happens if you see a message saying: "ffs_update: bad
  466.      indirect addr on entry...", so you can ignore it.
  467.  
  468.    * There are problems with printing running bsd-4444. They often result in
  469.      a complete crash of the kernel. 
  470.  
  471.    * There are still bugs in the console code due to ineffective resource
  472.      locking. This can cause a kernel panic (usually a data abort) on
  473.      console switching (This is a rare bug).
  474.  
  475.    * The console vt100 and vt220 emulation is buggy.
  476.  
  477.    * It is possible to crash the console code by running top and holding
  478.      down CTRL-L which forces screen redraws. For some reason a circular
  479.      list in the console code gets trashed.
  480.  
  481.  
  482.  
  483. Subject: 5. Device drivers
  484.  
  485. Q 5.1: What device drivers are available for standard RPC hardware
  486. A: Device drivers have been written for the following devices. floppy, ide,
  487. serial, parallel, keyboard, quadmouse, virtual consoles, simple beep (non
  488. 16 bit sound machines)
  489. A ATAPI CDROM driver is planned for shortly.
  490.  
  491.  
  492. Q 5.2: What SCSI cards are supported
  493. A: Currently there are alpha stage polling drivers for Cumana SCSI II and
  494. Powertec SCSI II cards. An alpha Oak SCSI I driver has been be completed.
  495. A new Acorn SCSI I driver has now been written (04/03/96) that replaces
  496. the existing alpha stage driver. This new driver is a low more reliable and
  497. also supports interrupts. Other SCSI drivers planned (but not limited to)
  498. are Morley, VTI and Yellowstone
  499.  
  500.  
  501. Q 5.3: What ethernet cards are supported
  502. A: Currently there are drivers for ether1, ether3/5, etherB and etherH
  503. interfaces. Support for etherM interfaces is being looked into.
  504. A driver for the 91C9X ethernet controller on RC7500 motherboards is also
  505. supported.
  506.  
  507.  
  508. Q 5.4: Will there be 16bit sound support?
  509. A: Very soon. A driver is under development at the moment. Note machines
  510. with 16 bit sound do not support the simple beep device as the beep device
  511. uses 8 bit log sound which requires software emulation on the 16bit
  512. hardware.
  513.  
  514.  
  515. Q 5.5: Are there any other drivers under development/planned
  516. A: Yes. Drivers for the simtec multiprocessor card, and vidcaudio are under
  517. development.
  518. Drivers are planned or under development for a number of SCSI and ethernet
  519. cards (see 5.2 and 5.3). Drivers are also planned for the ISAadapter,
  520. 486 coproc, dual serial cards and several image digitisers.
  521. A driver for the Yellowstone RapIDE podule is planned and work is expected
  522. to commence shortly. Initial the driver will be written without using any
  523. NDA material so will not achieve the maximum possible performance, but the
  524. expected performance should significantly better than internal IDE driver.
  525. In the future when LKM's are supported a high performance version of the
  526. driver may be made available as an object file.
  527.  
  528.  
  529. Q 5.6: Are there any cards which are unlikely to be supported in the near
  530. future?
  531. A: No specific cards. However unless the kernel team has access to a podule
  532. or can get one on loan a driver is unlikely to be written for a podule.
  533.  
  534.  
  535. Q 5.7: What about ATAPI CDROM support ?
  536. A: Kernels have been built using the ATAPI code under development for
  537. NetBSD. These kernels are still being tested an ATAPI kernel hopefully
  538. will be available shortly.
  539.  
  540.  
  541.  
  542. Subject: 6. Multiprocessor card (Simtec Hydra)
  543.  
  544. Q 6.1: What is the current status of multiprocessor card support?
  545. A: There are some hardware problems with the first prototype multiprocessor
  546. card. We have a syscall which loads user code onto a slave processor and
  547. runs it but the code eventually crashes (believed to be hardware related).
  548. 02/08/96 - I now have the latest revision of the multiprocessor board so
  549. the code is being updated for the changes to the interrupts.
  550.  
  551. Q 6.2: Will the card be used for running custom accelerators or full MP?
  552. A: We plan to have full multiprocessing capabilities within RiscBSD
  553. (probably by the time that Simtec start selling the cards). An accelerated MP
  554. FPE will probably be written for internal testing purposes but this is
  555. unlikely to appear in a released kernel. Other interesting custom accelerators
  556. would involve nearly as much work as making RiscBSD fully MP so there is no
  557. intention to implement them at present.
  558.  
  559.  
  560. Q 6.3: Will it be possible to run RiscBSD on a slave processor in a RiscOS
  561. window?
  562. A: We (the core team) have enough on our plate for the moment so we will not
  563. be implementing it within the next six months. There has been a lot of
  564. interest in it so I would guess that it will get done eventually (someone
  565. has even volunteered to write bits of it, but he will need to wait until
  566. the multiprocessor board is on sale). Another point to note is that it is
  567. likely to run *very* slowly.
  568.  
  569.  
  570. Q 6.4: Can the 486 card be used from within RiscBSD?
  571. A: No. 3rd parties are welcome to try. There may be a driver written in the
  572. future to aid communication with the 486 co-proc. Currently the information
  573. on ARM<->486 communications is NDA thus making it difficult for 3rd parties.
  574.  
  575.  
  576. Q 6.5: What is the long term multiprocessor goal
  577.  
  578. A: The eventual aim is to be able to thread user processes onto all the
  579. processors on the multiprocessor board. This is a fairly major piece of work
  580. and is likely to take a long time to complete. There is some SMP work
  581. proceeding for the the Sparc 20 port of NetBSD and we hope that we may be
  582. able to join forces with some of that development in order to speed the
  583. development up.
  584.  
  585.  
  586.  
  587. Subject: 7. Ported Software
  588.  
  589. Q 7.1: What software is available?
  590. A: Lots. A list of some of the more interesting (??) software currently
  591. ported is: top, X11R6, fvwm, joe, xemacs, aXe, TeX, LaTeX, xdvi, xv,
  592. xpaint, xanim, mpeg_play, knews, chimera, Mosaic, ghostscript .
  593. See Q3.2 for a list of sets available for installation.
  594.  
  595.  
  596. Q 7.2: Can I compile C++ under RiscBSD?
  597. A: The cc272 set contains both a c and c++ compiler.
  598. There were problems compiling c++ code with the older gcc 2.6.3 release and
  599. with the original RiscBSD 1.1 comp set. These problems were fixed with 2.7.2
  600. and the latest comp set. 
  601.  
  602. Q 7.3: What networking software is available?
  603. A: Most of the standard UNIX networking: telnet, nfs, news, www, ftp,
  604. email, SLIP, PLIP, etc. RiscBSD can act as client, server or both in most
  605. cases.
  606.  
  607.  
  608. Q 7.4: Is MudOS available?
  609. A: The MudOS source triggered a bug in the gcc 2.6.3 ARM-610 back-end.
  610. This causes the code to either fail to compile or compile incorrectly
  611. leading to strange errors when it runs. 
  612. Now that GCC 2.7.2 is available for RiscBSD the bug needs to be tested.
  613. At moment the author (of this FAQ) does not know if this problem has been
  614. fixed.
  615.  
  616.  
  617.  
  618. Subject: 8. Bugs and Errors
  619.  
  620. Q 8.1: Who do I report bugs to?
  621. A: There are a number of places to report bugs to :
  622. 1. The mailing list. Reporting bugs to the mailing will bring them to the
  623. attention of the kernel team and other users who may have encountered the
  624. problem or who may encounter it.
  625. 2. The WWW bug report form. The bug report form should also be used to
  626. report bugs. Reports sent via the form are sent to the kernel team member
  627. responcible for that particular part of the kernel.
  628. 3. The core team. Bug reports can be sent to the core kernel team's mailing
  629. list but normally the two above methods should be used.
  630. 4. Use send-pr (see the man page for more details). Problems with RiscBSD
  631. or NetBSD/arm32 should use the port-arm32 category.
  632.  
  633. Q 8.2: savecore reports an error during multiuser startup.
  634. A: This error can occur if the kernel you booted RiscBSD from is not the
  635. same as the kernel /netbsd. NetBSD uses the kernel image in the file /netbsd
  636. to lookup symbols names in order to read kernel variables via /dev/kmem. If
  637. the /netbsd does not match the booted kernel then variables can be read from
  638. the wrong locations. The first indication is normally savecore which makes
  639. use of /netbsd to lookup the major and minor of the dump device.
  640.  
  641.  
  642. Q 8.3: What does proc size mismatch error mean ?
  643. A: There are two possible causes of this error. Q8.2 explains one possible
  644. reason. The other is that that the proc structure in the kernel has changed
  645. and this effects libkvm. Any binaries that use libkvm (ps, top vmstat etc.)
  646. will need to be updated. If changes are made to the proc structure that will
  647. effect libkvm then a kvm upgrade set/patch will be made available.
  648.  
  649.  
  650. Q 8.4: Global constructors in c++ code are not working
  651. A: A bug in the beta cc263 set meant that the gcc collect2 binary was
  652. not installed. This binary is required by the the current linker (GNU
  653. binutils 2.5.2) to handle global constructors and destructors in c++ code
  654. As of 01/02/96 the beta cc263 set has been fixed to cure this problem.
  655. If you are running a version of cc263 installed prior to 01/02/96 you should
  656. re-install the set.
  657.  
  658.  
  659. Q 8.5: What does "Possible process deadlock due to shortage of L1 page
  660. tables." mean ?
  661. A: The MMU required a level 1 page table for each process. Due to the design
  662. of the ARM MMU, these page tables must be a 16KB physically continuous block
  663. of physical memory on a 16KB physical boundry. Since the kernel VM system
  664. cannot not dynamically allocate such block of memory, memory for the L1 page
  665. tables has to be reserved at boot time. The "max processes" field in the
  666. boot loader specifies the number of L1 page tables to allocate at boot. If
  667. more than this number of processes are created then a shortage occurs. The
  668. new processes are put to sleep until L1 page tables become available. This
  669. will happen when an existing process terminates. During the sleeping period
  670. system deadlocks can sometimes occur if none of the existing processes
  671. terminate. The system will appear to freeze as none of the existing
  672. processes can exit until the new processes start etc. Sometimes CTRL-C
  673. can be used to terminate a processes running in the foreground.
  674. As yet a solution to this problem has not for found that is satisfactory.
  675.  
  676.  
  677. Q 8.6: I have plenty of memory, but gcc complains about "virtual memory
  678. exhausted" when it tries to compile a large source file.
  679. A: There are limits in NetBSD to keep programs from using too much of the
  680. machine's resources. They can be viewed with "limit" ("sysctl -a | more"
  681. gives more information kept by the kernel).
  682. Type "limit datasize unlimited" or "unlimit" (this will remove all limits)
  683. to allow gcc to grab more than 16 MB. You can also put this in your
  684. shell's startup file, eg. ~/.cshrc.
  685.  
  686.  
  687.  
  688. Subject: 9. How do I ...
  689.  
  690. Q 9.1: How do I add users to my system ?
  691. A: There are a number of ways of adding users to your system. They are :
  692. 1) Edit the master.passwd file adding an entry for a new user. Then
  693.    run pwd_mkdb master.passwd to rebuild the passwd database.
  694. 2) Use the command vipw. This allows you to edit the passwd file in vi
  695.    and will automatically rebuild the passwd database when you exit
  696. 3) Install the config set (Any version after 29/01/96).
  697.    Run the command /usr/local/sbin/rcm to invoke the RiscBSD configuration
  698.    Manager. There will be a menu option to add users. After selecting
  699.    this you will be prompted for details about the account you want to
  700.    create. The user will be added to the passwd file and the passwd database
  701.    will automatically be rebuilt.
  702.  
  703.  
  704. Q 9.2: How can I use my ATAPI CDROM under RiscBSD ?
  705. A: First make sure you have a kernel that supports ATAPI drives.
  706. During device probing the kernel will report any ATAPI devices found if
  707. it supports ATAPI drives.
  708. Secondly you have to ensure that the device files in /dev are present:
  709. Log on as root, then:
  710.  
  711.     cd /dev
  712.     mknod acd0a b 20 0
  713.     mknod acd0c b 20 2
  714.     mknod racd0a c 20 0
  715.     mknod racd0c c 20 2
  716.  
  717. From RiscBSD 1.2 onwards /dev/MAKEDEV will support makeing the acd devices
  718. so you can use
  719.  
  720.     cd /dev
  721.     /MAKEDEV acd0
  722.  
  723. You should then be able to mount a CD with:
  724.       mount -r -t cd9660 /dev/acd0a /mnt
  725.  
  726. Please note that ATAPI support is still in its beta stage.
  727.  
  728.  
  729.  
  730. Subject: 10. Performance matters
  731.  
  732. Q 10.1: How good is GCC compared to Norcroft C
  733. A: So far the only performance tests conducted have been dhrystone
  734. measurements. The results are shown below.
  735.  
  736. Dhrystones benchmarks
  737. Processor: 30MHz ARM610
  738.  
  739. 1000000 iterations -DHZ=100 -DTIME
  740.  
  741. GCC 2.7.2 options        us/dhrystone    dhrystones/sec
  742.                 71.0        14085
  743. -O                38.0        26316
  744. -O1                37.0        27027
  745. -O2                37.0        27027
  746. -O3                36.0        27777
  747.  
  748. 1000000 iterations -DHZ=100 -DTIME -DREG=register
  749.  
  750. GCC 2.7.2 options        us/dhrystone    dhrystones/sec
  751.                 63.0        15873
  752. -O                37.0        27027
  753. -O1                37.0        27027
  754. -O2                37.0        27027
  755. -O3                36.0        27778
  756.  
  757. 1000000 iterations -DHZ=100 -DTIME
  758.  
  759. GCC 2.7.2 options        us/dhrystone    dhrystones/sec
  760. -O -fomit-frame-pointer        32.0        31250
  761. -O1 -fomit-frame-pointer    32.0        31250
  762. -O2 -fomit-frame-pointer    32.0        31250
  763. -O3 -fomit-frame-pointer    31.0        32258
  764.  
  765. 1000000 iterations -DHZ=100 -DMSC_TIME
  766.  
  767.                 us/dhrystone    dhrystones/sec
  768. Norcroft C V4            32.0        31250
  769. Norcroft C V5            25.6        39093
  770.  
  771. Summary
  772. Results indicate with optimisation greater than -O the use of the
  773. register keyword does not aid performance.
  774. Results indicate that there is very little (if any) performance gain
  775. between the optimisation levels -O, -O1 and -O2. -O provides a significant
  776. performance increase over no optimisation. -O3 does provide a small
  777. increase over -O2. Further improvements can be obtained using the
  778. -fomit-frame-pointer option.
  779. NOTE: Omitting frame pointers means that a binary cannot be debugged or
  780. traced so any program crashes etc. cannot be traced. -fomit-frame-pointer
  781. should not be used in conjuction with -g.
  782.  
  783. GCC 2.7.2 can produce code as efficiently as Norcroft C V4 but Norcroft C V5
  784. produces much better results.
  785.  
  786.  
  787. Q 10.2: Why is my SCSI harddisk so slow?
  788. A: This is due to the fact that the drivers for the Cumana and PowerTec
  789. cards are polling only at the moment. There were problems with interrupt
  790. handling which are almost fixed now, so these drivers should become interrupt
  791. driven soon.
  792.  
  793.  
  794.  
  795. Subject: 11. The X Window System
  796.  
  797. Q 11.1: What is the minimum specification of machine to run X?
  798. A: In addition to the minimum specifications to run RiscBSD, X requires quite
  799. a bit of memory. It is recommended that you have at least 12Mb of RAM and at
  800. least 24Mb of swap. You will also need over 60Mb of disk space to install X.
  801.  
  802.  
  803. Q 11.2: What is the current state of X?
  804. A: X for RiscBSD is version 11, release 6 of the MIT X Window System. All the
  805. libraries of the base distribution have been ported and an X-server (the bit
  806. which controls the display hardware) is in the process of being written.
  807. Snapshots of the current X-server are released periodically. The X-server is
  808. usually referred to as Xarm-<snapshot number>. If you upgrade to a new X-server
  809. it should be installed as /usr/X11R6/bin/Xarm. The only way to find out the
  810. version number of an installed Xarm is to run it. It prints out its version
  811. on the text console as it starts up.
  812.  
  813.  
  814. Q 11.3: Who do I report bugs to?
  815. A: Bugs should be reported to r.black@ic.ac.uk and the RiscBSD mailing list
  816. (port-arm32@netbsd.org). Alternatively the bug report form on the WWW site
  817. can be used.
  818.  
  819.  
  820. Q 11.4: What are the known problems and features of X under RiscBSD?
  821. A: Here is a list of features of Xarm extra to RiscBSD:
  822.  
  823. * Numeric keypad acts as a mouse
  824.  
  825. * Virtual terminal switching - X is on ALT-F9
  826.  
  827. * xpm displayed on startup (/usr/X11R6/include/X11/pixmaps/Xserver.xpm)
  828. this must use numeric respresentation for colours. xv usually produces
  829. suitable pixmaps.
  830.  
  831. Here is a list of features not supported fully by Xarm:
  832.  
  833. * Autorepeat is fixed rate and cannot be switched off.
  834.  
  835. * No screensaver.
  836.  
  837. * Mouse acceleration is not configurable.
  838.  
  839. * Only 8bpp modes are supported by the standard Xarm. A specific mono Xarm
  840. is available on request but it doesn't work with most kernels.
  841.  
  842. * The only working lock key is Caps Lock.
  843.  
  844. The following are known bugs:
  845.  
  846. * Autorepeat sometimes inserts three characters instead of one.
  847.  
  848. * Virtual terminal switching does not work properly on many combinations of
  849. Xarm and RiscBSD kernel versions. The workaround is to waggle the mouse after
  850. attempting to switch back into X with ALT-F9. Then press ALT again and release
  851. it so that X gets a key-up event.
  852.  
  853. * ALT key can appear to be stuck if the console is switched. Pressing the
  854. ALT keys after switching in X will cure the problem.
  855.  
  856.  
  857. Q 11.5: Where is libXpm / xpm.h ?
  858. A: libXpm is not part of the standard X11R6 distribution. It is a separate
  859. package so you need to download it separately.
  860.  
  861.  
  862. Q 11.6: Is Motif available?
  863. A: No. Motif is a commercial package and we can't afford a source license to
  864. port it. At some time in the future Lesstif will be used instead but for the
  865. moment Lesstif does not support much of the functionality required. You are
  866. likely to be able to compile things 'out of the box' using Lesstif instead of
  867. Motif by Q4 1996.
  868.  
  869.  
  870. Q 11.7: Are programs compiled with Motif available?
  871. A: There are no license problems with distributing binaries which are
  872. statically linked using the Motif runtime executive provided that the
  873. person who linked them has either a Motif source or library license
  874. (in practice this means a source license).
  875.  
  876.  
  877. Q 11.8:  How do I set up xdm?
  878. A: You need to do a lot of reading of the manual pages. At some time in the
  879. future I will stick together some sample configuration scripts. The samples
  880. supplied with X11R6 as standard do not work properly with RiscBSD.
  881.  
  882.  
  883.  
  884. Subject: 12. Troubleshooting X
  885.  
  886. Q 12.1: I get error messages about missing devices.
  887. A: This means that either Xarm is incompatible with your kernel or you are
  888. missing some files from the /dev directory. To create device files cd to /dev
  889. and type './MAKEDEV all' (as root).
  890.  
  891.  
  892. Q 12.2: Everything works if I'm root, but not otherwise.
  893. A: This means that the permissions on Xarm are wrong. Type the following:
  894. 'cd /usr/X11R6/bin; chown root Xarm; chmod u+sx Xarm'
  895.  
  896.  
  897. Q 12.3: X is really slow to start up and so are some X apps.
  898. A: The floating point emulator under RiscBSD is less than optimal. Font
  899. handling uses a lot of floating point maths. The fonts are converted into
  900. bitmaps when various applications start up.
  901.  
  902.  
  903. Q 12.4: I get error messages about invalid keycodes.
  904. A: You are using a pre-beta Xarm with an beta kernel. Upgrade Xarm to #14
  905.  
  906. --------------------------------------------------------------------------
  907. $Log: FAQ.txt,v $
  908. Revision 1.10  1996/08/06 21:07:14  mark
  909. Updated questions 1.2, 1.3, 2.1, 2.4, 2.7, 4.1, 7.2, 11.1, 11.3 and 11.4
  910. Removed questions 3.4 and 4.2
  911. Added questions 4.5, 8.6, 9.2 and 10.2
  912. Various other miscellaneous changes.
  913.  
  914.