Correct Answer: the private data maintained by a filesystem attached to a vnode.
Note: This Question is unanswered, help us to find answer for this one
Correct Answer: Page Cache pages.
Correct Answer: /kernel/drv/sparcv9/
Correct Answer: 32
Correct Answer: unix.X and vmcore.X where X is an integer.
Correct Answer: rwlock; glock
Correct Answer: %g7
Correct Answer: Because the kernel does not support floating point operations.
Correct Answer: It waits on the CV until the thread receives a wakeup. It returns 0 if the thread receives an external signal (sent via kill(2)).
Correct Answer: Yes
Correct Answer: _init; _fini; probe
Correct Answer: sema_p
Correct Answer: Use savecore to create the core files.
Correct Answer: save
Where is the following memory allocation type typically employed?
memp = kmem_alloc(size, KM_NOSLEEP);
In the user context code as a backend to malloc.
In the kernel context where every place memory needs to be allocated.
In the interrupt context.
In the buffer cache.
Correct Answer: In the interrupt context.
Correct Answer: Page Cache
Correct Answer: cv_signal
Correct Answer: The VOP_RWLOCK.
Correct Answer: $
Correct Answer: It returns the root vnode of the specified vfs.
Correct Answer: b_bcountb_blkno
Note: This question has more than 1 correct answers
Correct Answer: int strategy(struct buf *);
Correct Answer: Filesystem Metadata
Correct Answer: They are scheduled to run on the same processor.
Correct Answer: cv_init; mutex_enter; cv_wait; mutex_exit; cv_destroy
Correct Answer: LWP.
Correct Answer: send brk via a telnet session.CTRL-A on sun keyboards.
Correct Answer: Kernel thread.
Correct Answer: Buffer Cache
Correct Answer: output
Correct Answer: mutex_init(lock pointer, lock name, type of mutex)
Correct Answer: readwrite_init(lock pointer)
Correct Answer: -xarch=v9
Correct Answer: modload mymod; modunload -i moduleid
Correct Answer: read(2)/write(2) system calls
Correct Answer: The system panics.
Correct Answer: unix kadb
Correct Answer: kmutex_tkcondvar_t
Correct Answer: True
Correct Answer: No
Correct Answer: Priority inversion.
Correct Answer: Writers
Correct Answer: $r
Correct Answer: Mutex
Correct Answer: VOP_LOOKUPVOP_READDIR
Correct Answer: The address of the allocated memory.The size of the allocated memory.
Correct Answer: It is double word aligned.Its availability is limited to the amount of physical memory.
What does the following kernel interface do?
rw_lock_held(lock pointer);
It checks if the lock is held in the read mode.
It checks if the lock is held in the write mode.
It does 'a' and locks it in the write mode.
It does 'b' and locks it in the read mode.
Correct Answer: It checks if the lock is held in the read mode.
Correct Answer: sync
Correct Answer: It depends on the count associated with the semaphore.
Correct Answer: printf
Correct Answer: False
Correct Answer: getminor(dev_t)
Correct Answer: restore
Correct Answer: $r$C
Correct Answer: The interrupt handler will block until it can run again.
Correct Answer: ldstub
Correct Answer: ufs_read:b
Correct Answer: $panic address?ia
Correct Answer: Interrupt handler.
Correct Answer: bcopy
Correct Answer: struct uio
Correct Answer: struct file
On a solaris system with no special kmem_flag settings,
what happens when a thread running buggy code frees a buffer twice.
The results are unpredictable including a panic.
The kernel fails the second kmem_free.
The kernel kills the thread with a SEGFAULT.
The second free is harmless as the kernel knows that the memory has already been freed.
Correct Answer: The second free is harmless as the kernel knows that the memory has already been freed.
Correct Answer: ::break, ::delete
What do the following mdb commands do?
::allocdby
::freedby
They are used to print the log of transactions on a particular memory location.
They are used to print the log of transactions by a particular thread.
They are used to print the slab cache that refers to the particular address.
They are used to print the arenas that refer to the particular address.
Correct Answer: They are used to print the log of transactions by a particular thread.
Which of the following calls fits in at 'statement xxx'
to produce correct results in the code snippet below?
mutex_enter(mutex pointer);
while (condition is false) {
cv_wait(cv pointer, mutex pointer);
}
statement xxx;
mutex_exit(mutex pointer);
mutex_enter(mutex pointer)
mutex_exit(mutex_pointer)
nothing needs to be done.
cv_signal(cv pointer)
Correct Answer: nothing needs to be done.
Correct Answer: It points to the root inode of the filesystem.
Correct Answer: cc -D_KERNEL -o mymod.o; ld -r -o mymod mymod.o
Correct Answer: All of the above
Correct Answer: In a kernel thread context.
Correct Answer: kernel stack.user addresses.
Correct Answer: VOP_GETPAGE and VOP_PUTPAGE
Correct Answer: cv_broadcast
Correct Answer: drvconf
Correct Answer: It points to the root vnode of the filesystem to which the vnode belongs.
Correct Answer: It drops the reference count on a vnode and if required it deletes all data associated with a vnode.
Correct Answer: VFS_SYNC
Correct Answer: Initializing and deinitializing the mutexReader writer locking semantics on the mutex
Correct Answer: It should be the same as the number of processors.
Correct Answer: DNLCPage Cache
Kernel Programming - Solaris MCQs | Topic-wise